decocms 2.306.6 → 2.306.8

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 (261) hide show
  1. package/dist/client/assets/{AlertCircle-4Fij-rVg.js → AlertCircle-BTzXzMwa.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-CxNzupMt.js → ArrowNarrowLeft-D2yH9wXQ.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-B9s_0HcJ.js → ArrowUpRight-Oalb5bG5.js} +1 -1
  4. package/dist/client/assets/{Check-DC_iCN8Z.js → Check-D4yu1L9M.js} +1 -1
  5. package/dist/client/assets/{CheckCircle-ROoANe3f.js → CheckCircle-Ce90skz0.js} +1 -1
  6. package/dist/client/assets/{ChevronDown-CnUhTqwX.js → ChevronDown-BqGwceCn.js} +1 -1
  7. package/dist/client/assets/{ChevronRight-X2lm_E9M.js → ChevronRight-BRV7Tdzz.js} +1 -1
  8. package/dist/client/assets/{ChevronUp-CgOfWCZA.js → ChevronUp-pbRiDYbB.js} +1 -1
  9. package/dist/client/assets/{Container-BrskPoE3.js → Container-Cf08ks6f.js} +1 -1
  10. package/dist/client/assets/{DotsVertical-C2-ev8jy.js → DotsVertical-Cb1IeswQ.js} +1 -1
  11. package/dist/client/assets/{LinkExternal01-Bhhv-wHj.js → LinkExternal01-DfeIVyGK.js} +1 -1
  12. package/dist/client/assets/{Lock01-KbqVCyA7.js → Lock01-B6CuPSqy.js} +1 -1
  13. package/dist/client/assets/{Palette-CmZGtCez.js → Palette-6MGVk9XZ.js} +1 -1
  14. package/dist/client/assets/{Play-EPgISV5B.js → Play-Z9TLXhXZ.js} +1 -1
  15. package/dist/client/assets/{Plus-BYimMcAW.js → Plus-BWFmeYbA.js} +1 -1
  16. package/dist/client/assets/{RefreshCcw01-DIY3NFBI.js → RefreshCcw01-DdNBG9uq.js} +1 -1
  17. package/dist/client/assets/{SearchMd-DzMVdOJP.js → SearchMd-Bk2WMaal.js} +1 -1
  18. package/dist/client/assets/{Settings02-BxmxMTOA.js → Settings02-DV_JgL_i.js} +1 -1
  19. package/dist/client/assets/{Shield01-B9vNkAc4.js → Shield01-DabBYOJe.js} +1 -1
  20. package/dist/client/assets/{Star01-iULH34rV.js → Star01-EsNS3h_Z.js} +1 -1
  21. package/dist/client/assets/{Sun-Dc78AQrj.js → Sun-BSBNF16W.js} +1 -1
  22. package/dist/client/assets/{Tool01-DVcjHQGB.js → Tool01-BLP2PhNo.js} +1 -1
  23. package/dist/client/assets/{Trash01-CaZrP0UV.js → Trash01-BrCWXUwU.js} +1 -1
  24. package/dist/client/assets/{User01-7U7nAEDg.js → User01-YnNa4o8H.js} +1 -1
  25. package/dist/client/assets/{Users03-CIZBy7k3.js → Users03-ju7GWCNc.js} +1 -1
  26. package/dist/client/assets/{X-QdBx5oCM.js → X-Bwb7_m5v.js} +1 -1
  27. package/dist/client/assets/{XCircle-DokNvYvs.js → XCircle-CH3QyMaX.js} +1 -1
  28. package/dist/client/assets/{XClose-BdbZPqCd.js → XClose-CWzVSlUZ.js} +1 -1
  29. package/dist/client/assets/{Zap-DH1KrJ0w.js → Zap-ByRL5ggZ.js} +1 -1
  30. package/dist/client/assets/{ZapSquare-CnxL4Bs1.js → ZapSquare-DwXwFOB5.js} +1 -1
  31. package/dist/client/assets/{accordion-81SrnINF.js → accordion-DEfiI4_u.js} +1 -1
  32. package/dist/client/assets/{agent-icon-C2zAhw3X.js → agent-icon-BWW-_spm.js} +1 -1
  33. package/dist/client/assets/{agents-list-CH2sTwpj.js → agents-list-DtSKcauO.js} +1 -1
  34. package/dist/client/assets/ai-providers-Dmv17i-r.js +1 -0
  35. package/dist/client/assets/{alert-dialog-BytOwrWo.js → alert-dialog-CIRyCiSh.js} +1 -1
  36. package/dist/client/assets/{auth-catchall-BcUDEqD5.js → auth-catchall-DM2HSAyx.js} +1 -1
  37. package/dist/client/assets/{automation-list-row-etrXhG1_.js → automation-list-row-BZQnmXsD.js} +1 -1
  38. package/dist/client/assets/{automations-DFRPWAOO.js → automations-BpoAkXQ6.js} +1 -1
  39. package/dist/client/assets/{avatar-D0sdobqD.js → avatar-O6nD_RVH.js} +1 -1
  40. package/dist/client/assets/{badge-tvsCFCHP.js → badge-1GzX8YfJ.js} +1 -1
  41. package/dist/client/assets/{brand-context-Cy-kcB0m.js → brand-context-pSsdhU7u.js} +1 -1
  42. package/dist/client/assets/{card-BGZ5LqAO.js → card-YRPYO7rK.js} +1 -1
  43. package/dist/client/assets/{chat-context-iq-Q-O9L.js → chat-context-BXGy7Agh.js} +1 -1
  44. package/dist/client/assets/{checkbox-IEnuEqAm.js → checkbox-BtvQbCay.js} +1 -1
  45. package/dist/client/assets/{collection-detail-BnoKU_uS.js → collection-detail--ucxh4J-.js} +1 -1
  46. package/dist/client/assets/{collection-display-button-tJsvfx8o.js → collection-display-button-CMOfNtao.js} +1 -1
  47. package/dist/client/assets/{collection-search-bjPRZI3g.js → collection-search-CYChlQpy.js} +1 -1
  48. package/dist/client/assets/{collection-search-O8QAretn.js → collection-search-mbr97YEK.js} +1 -1
  49. package/dist/client/assets/{collection-table-wrapper-CcyIZki9.js → collection-table-wrapper-BnAWIjfr.js} +1 -1
  50. package/dist/client/assets/{collection-tabs-CqINIlN4.js → collection-tabs-CkdgJkBV.js} +1 -1
  51. package/dist/client/assets/{collections-DKW_jlNs.js → collections-BFntmLot.js} +1 -1
  52. package/dist/client/assets/{command-Cbi8R9Tg.js → command-Cbz_0bPm.js} +1 -1
  53. package/dist/client/assets/{connection-card-Aj-8CWhX.js → connection-card-BLDKB8T1.js} +1 -1
  54. package/dist/client/assets/{connection-detail-G5l6bgwi.js → connection-detail-BFIdeQRn.js} +1 -1
  55. package/dist/client/assets/{connection-form-helpers-hlnQqQXV.js → connection-form-helpers-CSJOop0l.js} +1 -1
  56. package/dist/client/assets/{connections-CrOLesap.js → connections-BW08Tw6P.js} +1 -1
  57. package/dist/client/assets/{constants-Dm1wnwL3.js → constants-CyYXtNQt.js} +1 -1
  58. package/dist/client/assets/{constants-CWAA475A.js → constants-O6TOd6Fi.js} +1 -1
  59. package/dist/client/assets/{dialog-0SvGB_9G.js → dialog-BapANLA4.js} +1 -1
  60. package/dist/client/assets/{domain-settings-CckaLtjm.js → domain-settings-BiGD_AWa.js} +1 -1
  61. package/dist/client/assets/{drawer-CyXE-C5x.js → drawer-DXfcxG35.js} +1 -1
  62. package/dist/client/assets/{dropdown-menu-BkrpBFy3.js → dropdown-menu-8r0P5O89.js} +1 -1
  63. package/dist/client/assets/{dynamic-plugin-layout-DAf8nhzs.js → dynamic-plugin-layout-88jqqJ-n.js} +1 -1
  64. package/dist/client/assets/{empty-state-CxZybw5m.js → empty-state-CxaKSceI.js} +1 -1
  65. package/dist/client/assets/{empty-state-Crsog8CF.js → empty-state-D31vnJxY.js} +1 -1
  66. package/dist/client/assets/{extract-connection-data-CnUKkwJT.js → extract-connection-data-BAmE4x-0.js} +1 -1
  67. package/dist/client/assets/{features-Ddtjf7i2.js → features-Zs1cJ0se.js} +1 -1
  68. package/dist/client/assets/{form-BMjsxf1O.js → form-vm22t8bs.js} +1 -1
  69. package/dist/client/assets/{general-CVe1Krdt.js → general-DOQdXWNJ.js} +1 -1
  70. package/dist/client/assets/{index-AqmdpH5c.js → index-4ADaRsb3.js} +1 -1
  71. package/dist/client/assets/{index-CPDZUQ3g.js → index-B1K3k56c.js} +1 -1
  72. package/dist/client/assets/{index-CyJ-TyKU.js → index-BZSJm92U.js} +1 -1
  73. package/dist/client/assets/{index-CEyiW6G-.js → index-C3KqPz7f.js} +1 -1
  74. package/dist/client/assets/{index-DusASzPG.js → index-CDWEA7tA.js} +17 -17
  75. package/dist/client/assets/{index-D85QLvNR.js → index-CHlpZld0.js} +1 -1
  76. package/dist/client/assets/{index-WBXV3t9A.js → index-COg7cSsl.js} +1 -1
  77. package/dist/client/assets/{index-hSAfwkZQ.js → index-CZoa5Voq.js} +1 -1
  78. package/dist/client/assets/{index-BV4BlnS9.js → index-CtJ1_vQP.js} +2 -2
  79. package/dist/client/assets/{index-CYY5hWbm.js → index-DCtZqQ0W.js} +1 -1
  80. package/dist/client/assets/{index-tIIHK8_r.js → index-DSEbXUmT.js} +1 -1
  81. package/dist/client/assets/{index-B8A_ReFj.js → index-DnMFHGHl.js} +1 -1
  82. package/dist/client/assets/{index-DYUyKEVO.js → index-Dy9FasiB.js} +1 -1
  83. package/dist/client/assets/{index-CZ5qFDIg.js → index-Irwc0F9z.js} +1 -1
  84. package/dist/client/assets/{index-DvCRkopi.js → index-cMeVTxue.js} +1 -1
  85. package/dist/client/assets/index-sD08ZTU7.js +1 -0
  86. package/dist/client/assets/{infiniteQueryObserver-DmPvCV47.js → infiniteQueryObserver-BORSReP2.js} +1 -1
  87. package/dist/client/assets/{input-Bs7mkNsF.js → input-DzKH4IoC.js} +1 -1
  88. package/dist/client/assets/{integration-icon-DgJZ63kl.js → integration-icon-DZ1DDayM.js} +1 -1
  89. package/dist/client/assets/{label-CB1YxmGr.js → label-B1j7QJO9.js} +1 -1
  90. package/dist/client/assets/{layout-GReGu88m.js → layout-CgSQP9Dz.js} +1 -1
  91. package/dist/client/assets/{lean-canvas-recruit-modal-BkH3ZJD2.js → lean-canvas-recruit-modal-CkuRnY-q.js} +1 -1
  92. package/dist/client/assets/{login-JiD1cfP5.js → login-BFVakp9W.js} +1 -1
  93. package/dist/client/assets/{members-B72381x1.js → members-BvtGRXTq.js} +1 -1
  94. package/dist/client/assets/{monaco-editor-_r7N6eV-.js → monaco-editor-DbLGolnd.js} +1 -1
  95. package/dist/client/assets/{monitoring-stats-row-IV0nDqiB.js → monitoring-stats-row-Bs9q7htN.js} +1 -1
  96. package/dist/client/assets/{oauth-callback-CkFjLbE_.js → oauth-callback-C2IfOXdE.js} +1 -1
  97. package/dist/client/assets/{oauth-callback-ai-provider-By5VSIqz.js → oauth-callback-ai-provider-DjdeIGJy.js} +1 -1
  98. package/dist/client/assets/{onboarding-CCZiORGK.js → onboarding-qQL2AHJp.js} +1 -1
  99. package/dist/client/assets/{org-layout-DF3EY572.js → org-layout-r-dIMXY7.js} +1 -1
  100. package/dist/client/assets/{org-plugin-layout-C4CnG2ku.js → org-plugin-layout-BdbYhknE.js} +1 -1
  101. package/dist/client/assets/{pair-Hj9vutgK.js → pair-BeVk0nw4.js} +1 -1
  102. package/dist/client/assets/{plugin-empty-state-DtiwhoNI.js → plugin-empty-state-tnsMkLWl.js} +1 -1
  103. package/dist/client/assets/{plugin-header-CjcXnInr.js → plugin-header-DlR3Hsv1.js} +1 -1
  104. package/dist/client/assets/{plugin-layout-BJ0qU511.js → plugin-layout-j_5ixQWh.js} +1 -1
  105. package/dist/client/assets/{popover-9-i1guS1.js → popover-BoJSCjqj.js} +1 -1
  106. package/dist/client/assets/{profile-C0pKX75D.js → profile-DJw46v6U.js} +1 -1
  107. package/dist/client/assets/{project-app-view-Btui0VFM.js → project-app-view-CqGwq86p.js} +1 -1
  108. package/dist/client/assets/registry-CRDkHUvw.js +2 -0
  109. package/dist/client/assets/{registry-layout-Cvjuv72f.js → registry-layout-CKKMYc0F.js} +1 -1
  110. package/dist/client/assets/{required-auth-layout-Cm0GjYeR.js → required-auth-layout-BOqEO0UW.js} +1 -1
  111. package/dist/client/assets/{reset-password-DHyMDEUg.js → reset-password-DC2CZqgK.js} +1 -1
  112. package/dist/client/assets/{roles-BRZ0jwUp.js → roles-B7M_sNQI.js} +1 -1
  113. package/dist/client/assets/{scroll-area-Dal58SLb.js → scroll-area-CVP2hanW.js} +1 -1
  114. package/dist/client/assets/{search-input-BSfMPrXv.js → search-input-DBJx5Puk.js} +1 -1
  115. package/dist/client/assets/{select-DQy3AX-J.js → select-BL-3WYG3.js} +1 -1
  116. package/dist/client/assets/{select-model-BjvpQUyU.js → select-model-CBeAOuD4.js} +1 -1
  117. package/dist/client/assets/{settings-layout-Hke-qhRP.js → settings-layout-D4-CafDE.js} +1 -1
  118. package/dist/client/assets/{settings-section-DJf4hau9.js → settings-section-sY44gYa3.js} +1 -1
  119. package/dist/client/assets/{shell-layout-BcsYrOTT.js → shell-layout-BRqsQqla.js} +1 -1
  120. package/dist/client/assets/{skeleton-DLT024S3.js → skeleton-BWfslVYc.js} +1 -1
  121. package/dist/client/assets/{sso-BuTvljxJ.js → sso-CqR7Oikv.js} +1 -1
  122. package/dist/client/assets/{store-Iw0YIysI.js → store-QjnVaNvS.js} +1 -1
  123. package/dist/client/assets/store-registry-CEd7y-Xb.js +2 -0
  124. package/dist/client/assets/{switch-ChOgiOZl.js → switch-ClIsCuo0.js} +1 -1
  125. package/dist/client/assets/{table-B48Xy50A.js → table-DLr2fSXp.js} +1 -1
  126. package/dist/client/assets/{tabs-y647ki3a.js → tabs-CEhOvCGw.js} +1 -1
  127. package/dist/client/assets/{task-status-IiU7o7it.js → task-status-C-SQfZZK.js} +1 -1
  128. package/dist/client/assets/{textarea-CT4UCcWE.js → textarea-BQD2K7xE.js} +1 -1
  129. package/dist/client/assets/{toggle-group-CgDVnjbj.js → toggle-group-i71R22i3.js} +1 -1
  130. package/dist/client/assets/{tools-list-Dl1EqLq_.js → tools-list-CPm-Mx4D.js} +1 -1
  131. package/dist/client/assets/{tooltip-DZT-1bal.js → tooltip-BTEnXfpw.js} +1 -1
  132. package/dist/client/assets/{types-DA7k1cs0.js → types-lb3PNUQc.js} +1 -1
  133. package/dist/client/assets/{use-ai-providers-Bv-kgplO.js → use-ai-providers-BKH_isZv.js} +1 -1
  134. package/dist/client/assets/{use-collections-ASqcb463.js → use-collections-VlH2NrqV.js} +1 -1
  135. package/dist/client/assets/{use-connection-Ck4brnCx.js → use-connection-M1xDmD9i.js} +1 -1
  136. package/dist/client/assets/{use-copy-qtJD_4jj.js → use-copy-DEJBJAsZ.js} +1 -1
  137. package/dist/client/assets/{use-create-virtual-mcp-CTxthd0a.js → use-create-virtual-mcp-BL0xa08p.js} +1 -1
  138. package/dist/client/assets/{use-debounced-autosave-BliXkuEQ.js → use-debounced-autosave-DJj5fuFt.js} +1 -1
  139. package/dist/client/assets/{use-decopilot-events-tgKj5crX.js → use-decopilot-events-Bb2NleBN.js} +1 -1
  140. package/dist/client/assets/{use-delete-connection-DM_4FfQI.js → use-delete-connection-Bib86QGR.js} +1 -1
  141. package/dist/client/assets/{use-infinite-scroll-De_3UNjO.js → use-infinite-scroll-D8nIolCd.js} +1 -1
  142. package/dist/client/assets/{use-list-state-SVk88wog.js → use-list-state-BYi_uUtE.js} +1 -1
  143. package/dist/client/assets/{use-mcp-tools-rNZ6JWxz.js → use-mcp-tools-CtUqFvLD.js} +1 -1
  144. package/dist/client/assets/{use-members-Bk-c46d0.js → use-members-CdkSabwq.js} +1 -1
  145. package/dist/client/assets/{use-navigate-to-agent-CwcBoswU.js → use-navigate-to-agent-D91A1ehg.js} +1 -1
  146. package/dist/client/assets/{use-org-auth-client-Hwc_S6Fw.js → use-org-auth-client-CANxngbZ.js} +1 -1
  147. package/dist/client/assets/{use-org-sso-Cj1DBVz0.js → use-org-sso-KaCvgTMV.js} +1 -1
  148. package/dist/client/assets/{use-organization-roles--8BRYJrg.js → use-organization-roles-BXlhN5BZ.js} +1 -1
  149. package/dist/client/assets/{use-organization-settings-gFwljgrZ.js → use-organization-settings-CCxU4osF.js} +1 -1
  150. package/dist/client/assets/{use-registry-connections-Dgb2TDlG.js → use-registry-connections-CcXpK-ys.js} +1 -1
  151. package/dist/client/assets/{use-status-sounds-Cn3fBsPH.js → use-status-sounds-Cwi7Sfh7.js} +1 -1
  152. package/dist/client/assets/{use-tasks-DqNLNkkM.js → use-tasks-D03EtFvf.js} +1 -1
  153. package/dist/client/assets/{use-view-mode-D9kCRFMC.js → use-view-mode-CQIRYhjw.js} +1 -1
  154. package/dist/client/assets/{use-virtual-mcp-BR6mzHHD.js → use-virtual-mcp-CX5iadV3.js} +1 -1
  155. package/dist/client/assets/useInfiniteQuery-CgSxuvH6.js +1 -0
  156. package/dist/client/assets/useSuspenseInfiniteQuery-CH8re_uO.js +1 -0
  157. package/dist/client/assets/{user-BVu9y1Y7.js → user-C8zZ-7QW.js} +1 -1
  158. package/dist/client/assets/{view-mode-toggle-ZI-MN1pO.js → view-mode-toggle-Cw5HKJog.js} +1 -1
  159. package/dist/client/assets/{workflow-D5sDlQLV.js → workflow-Det6DT4b.js} +1 -1
  160. package/dist/client/assets/workflow-detail-BeFzNTls.js +1 -0
  161. package/dist/client/index.html +1 -1
  162. package/dist/server/cli.js +116 -39
  163. package/dist/server/node_modules/ansi-regex/index.d.ts +33 -0
  164. package/dist/server/node_modules/ansi-regex/index.js +14 -0
  165. package/dist/server/node_modules/ansi-regex/package.json +61 -0
  166. package/dist/server/node_modules/ansi-regex/readme.md +66 -0
  167. package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  168. package/dist/server/node_modules/emoji-regex/README.md +107 -0
  169. package/dist/server/node_modules/emoji-regex/index.d.ts +3 -0
  170. package/dist/server/node_modules/emoji-regex/index.js +4 -0
  171. package/dist/server/node_modules/emoji-regex/index.mjs +4 -0
  172. package/dist/server/node_modules/emoji-regex/package.json +45 -0
  173. package/dist/server/node_modules/mimic-fn/index.d.ts +54 -0
  174. package/dist/server/node_modules/mimic-fn/index.js +13 -0
  175. package/dist/server/node_modules/{get-east-asian-width → mimic-fn}/license +1 -1
  176. package/dist/server/node_modules/mimic-fn/package.json +42 -0
  177. package/dist/server/node_modules/mimic-fn/readme.md +69 -0
  178. package/dist/server/node_modules/onetime/index.d.ts +64 -0
  179. package/dist/server/node_modules/onetime/index.js +44 -0
  180. package/dist/server/node_modules/onetime/package.json +43 -0
  181. package/dist/server/node_modules/onetime/readme.md +94 -0
  182. package/dist/server/node_modules/pg-int8/LICENSE +13 -0
  183. package/dist/server/node_modules/pg-int8/README.md +16 -0
  184. package/dist/server/node_modules/pg-int8/index.js +100 -0
  185. package/dist/server/node_modules/pg-int8/package.json +24 -0
  186. package/dist/server/node_modules/postgres-array/index.d.ts +4 -0
  187. package/dist/server/node_modules/postgres-array/index.js +97 -0
  188. package/dist/server/node_modules/{stack-utils/LICENSE.md → postgres-array/license} +1 -1
  189. package/dist/server/node_modules/postgres-array/package.json +35 -0
  190. package/dist/server/node_modules/postgres-array/readme.md +43 -0
  191. package/dist/server/node_modules/postgres-bytea/index.js +33 -0
  192. package/dist/server/node_modules/{pg/LICENSE → postgres-bytea/license} +6 -6
  193. package/dist/server/node_modules/postgres-bytea/package.json +34 -0
  194. package/dist/server/node_modules/postgres-bytea/readme.md +34 -0
  195. package/dist/server/node_modules/postgres-date/index.js +116 -0
  196. package/dist/server/node_modules/postgres-date/license +21 -0
  197. package/dist/server/node_modules/postgres-date/package.json +33 -0
  198. package/dist/server/node_modules/postgres-date/readme.md +49 -0
  199. package/dist/server/node_modules/postgres-interval/index.d.ts +20 -0
  200. package/dist/server/node_modules/postgres-interval/index.js +125 -0
  201. package/dist/server/node_modules/postgres-interval/license +21 -0
  202. package/dist/server/node_modules/postgres-interval/package.json +36 -0
  203. package/dist/server/node_modules/postgres-interval/readme.md +48 -0
  204. package/dist/server/node_modules/split2/LICENSE +13 -0
  205. package/dist/server/node_modules/split2/README.md +85 -0
  206. package/dist/server/node_modules/split2/bench.js +27 -0
  207. package/dist/server/node_modules/split2/index.js +141 -0
  208. package/dist/server/node_modules/split2/package.json +39 -0
  209. package/dist/server/node_modules/split2/test.js +409 -0
  210. package/dist/server/server.js +115 -38
  211. package/package.json +1 -1
  212. package/dist/client/assets/ai-providers-BxrN55-q.js +0 -1
  213. package/dist/client/assets/index-Bhv1nOmU.js +0 -1
  214. package/dist/client/assets/registry-Bhz5Jlkf.js +0 -2
  215. package/dist/client/assets/store-registry-Df9fj_hE.js +0 -2
  216. package/dist/client/assets/useInfiniteQuery-C_BkERX4.js +0 -1
  217. package/dist/client/assets/useSuspenseInfiniteQuery-DFnwwxGS.js +0 -1
  218. package/dist/client/assets/workflow-detail-BKMBH1Ij.js +0 -1
  219. package/dist/server/node_modules/cli-boxes/boxes.json +0 -82
  220. package/dist/server/node_modules/cli-boxes/index.d.ts +0 -127
  221. package/dist/server/node_modules/cli-boxes/index.js +0 -6
  222. package/dist/server/node_modules/cli-boxes/package.json +0 -42
  223. package/dist/server/node_modules/cli-boxes/readme.md +0 -115
  224. package/dist/server/node_modules/cli-spinners/index.d.ts +0 -139
  225. package/dist/server/node_modules/cli-spinners/index.js +0 -11
  226. package/dist/server/node_modules/cli-spinners/package.json +0 -56
  227. package/dist/server/node_modules/cli-spinners/readme.md +0 -74
  228. package/dist/server/node_modules/cli-spinners/spinners.json +0 -1697
  229. package/dist/server/node_modules/get-east-asian-width/index.d.ts +0 -60
  230. package/dist/server/node_modules/get-east-asian-width/index.js +0 -30
  231. package/dist/server/node_modules/get-east-asian-width/lookup-data.js +0 -18
  232. package/dist/server/node_modules/get-east-asian-width/lookup.js +0 -135
  233. package/dist/server/node_modules/get-east-asian-width/package.json +0 -71
  234. package/dist/server/node_modules/get-east-asian-width/readme.md +0 -65
  235. package/dist/server/node_modules/get-east-asian-width/utilities.js +0 -24
  236. package/dist/server/node_modules/pg/README.md +0 -95
  237. package/dist/server/node_modules/pg/esm/index.mjs +0 -20
  238. package/dist/server/node_modules/pg/lib/client.js +0 -743
  239. package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
  240. package/dist/server/node_modules/pg/lib/connection.js +0 -221
  241. package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
  242. package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
  243. package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
  244. package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
  245. package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
  246. package/dist/server/node_modules/pg/lib/defaults.js +0 -91
  247. package/dist/server/node_modules/pg/lib/index.js +0 -73
  248. package/dist/server/node_modules/pg/lib/native/client.js +0 -323
  249. package/dist/server/node_modules/pg/lib/native/index.js +0 -2
  250. package/dist/server/node_modules/pg/lib/native/query.js +0 -165
  251. package/dist/server/node_modules/pg/lib/query.js +0 -252
  252. package/dist/server/node_modules/pg/lib/result.js +0 -109
  253. package/dist/server/node_modules/pg/lib/stream.js +0 -83
  254. package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
  255. package/dist/server/node_modules/pg/lib/utils.js +0 -217
  256. package/dist/server/node_modules/pg/package.json +0 -76
  257. package/dist/server/node_modules/stack-utils/index.js +0 -344
  258. package/dist/server/node_modules/stack-utils/package.json +0 -39
  259. package/dist/server/node_modules/stack-utils/readme.md +0 -143
  260. /package/dist/server/node_modules/{cli-boxes → ansi-regex}/license +0 -0
  261. /package/dist/server/node_modules/{cli-spinners → onetime}/license +0 -0
@@ -0,0 +1,33 @@
1
+ export type Options = {
2
+ /**
3
+ Match only the first ANSI escape.
4
+
5
+ @default false
6
+ */
7
+ readonly onlyFirst: boolean;
8
+ };
9
+
10
+ /**
11
+ Regular expression for matching ANSI escape codes.
12
+
13
+ @example
14
+ ```
15
+ import ansiRegex from 'ansi-regex';
16
+
17
+ ansiRegex().test('\u001B[4mcake\u001B[0m');
18
+ //=> true
19
+
20
+ ansiRegex().test('cake');
21
+ //=> false
22
+
23
+ '\u001B[4mcake\u001B[0m'.match(ansiRegex());
24
+ //=> ['\u001B[4m', '\u001B[0m']
25
+
26
+ '\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true}));
27
+ //=> ['\u001B[4m']
28
+
29
+ '\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex());
30
+ //=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
31
+ ```
32
+ */
33
+ export default function ansiRegex(options?: Options): RegExp;
@@ -0,0 +1,14 @@
1
+ export default function ansiRegex({onlyFirst = false} = {}) {
2
+ // Valid string terminator sequences are BEL, ESC\, and 0x9c
3
+ const ST = '(?:\\u0007|\\u001B\\u005C|\\u009C)';
4
+
5
+ // OSC sequences only: ESC ] ... ST (non-greedy until the first ST)
6
+ const osc = `(?:\\u001B\\][\\s\\S]*?${ST})`;
7
+
8
+ // CSI and related: ESC/C1, optional intermediates, optional params (supports ; and :) then final byte
9
+ const csi = '[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]';
10
+
11
+ const pattern = `${osc}|${csi}`;
12
+
13
+ return new RegExp(pattern, onlyFirst ? undefined : 'g');
14
+ }
@@ -0,0 +1,61 @@
1
+ {
2
+ "name": "ansi-regex",
3
+ "version": "6.2.2",
4
+ "description": "Regular expression for matching ANSI escape codes",
5
+ "license": "MIT",
6
+ "repository": "chalk/ansi-regex",
7
+ "funding": "https://github.com/chalk/ansi-regex?sponsor=1",
8
+ "author": {
9
+ "name": "Sindre Sorhus",
10
+ "email": "sindresorhus@gmail.com",
11
+ "url": "https://sindresorhus.com"
12
+ },
13
+ "type": "module",
14
+ "exports": "./index.js",
15
+ "types": "./index.d.ts",
16
+ "sideEffects": false,
17
+ "engines": {
18
+ "node": ">=12"
19
+ },
20
+ "scripts": {
21
+ "test": "xo && ava && tsd",
22
+ "view-supported": "node fixtures/view-codes.js"
23
+ },
24
+ "files": [
25
+ "index.js",
26
+ "index.d.ts"
27
+ ],
28
+ "keywords": [
29
+ "ansi",
30
+ "styles",
31
+ "color",
32
+ "colour",
33
+ "colors",
34
+ "terminal",
35
+ "console",
36
+ "cli",
37
+ "string",
38
+ "tty",
39
+ "escape",
40
+ "formatting",
41
+ "rgb",
42
+ "256",
43
+ "shell",
44
+ "xterm",
45
+ "command-line",
46
+ "text",
47
+ "regex",
48
+ "regexp",
49
+ "re",
50
+ "match",
51
+ "test",
52
+ "find",
53
+ "pattern"
54
+ ],
55
+ "devDependencies": {
56
+ "ansi-escapes": "^5.0.0",
57
+ "ava": "^3.15.0",
58
+ "tsd": "^0.21.0",
59
+ "xo": "^0.54.2"
60
+ }
61
+ }
@@ -0,0 +1,66 @@
1
+ # ansi-regex
2
+
3
+ > Regular expression for matching [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code)
4
+
5
+ ## Install
6
+
7
+ ```sh
8
+ npm install ansi-regex
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```js
14
+ import ansiRegex from 'ansi-regex';
15
+
16
+ ansiRegex().test('\u001B[4mcake\u001B[0m');
17
+ //=> true
18
+
19
+ ansiRegex().test('cake');
20
+ //=> false
21
+
22
+ '\u001B[4mcake\u001B[0m'.match(ansiRegex());
23
+ //=> ['\u001B[4m', '\u001B[0m']
24
+
25
+ '\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true}));
26
+ //=> ['\u001B[4m']
27
+
28
+ '\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex());
29
+ //=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
30
+ ```
31
+
32
+ ## API
33
+
34
+ ### ansiRegex(options?)
35
+
36
+ Returns a regex for matching ANSI escape codes.
37
+
38
+ #### options
39
+
40
+ Type: `object`
41
+
42
+ ##### onlyFirst
43
+
44
+ Type: `boolean`\
45
+ Default: `false` *(Matches any ANSI escape codes in a string)*
46
+
47
+ Match only the first ANSI escape.
48
+
49
+ ## Important
50
+
51
+ If you run the regex against untrusted user input in a server context, you should [give it a timeout](https://github.com/sindresorhus/super-regex).
52
+
53
+ **I do not consider [ReDoS](https://blog.yossarian.net/2022/12/28/ReDoS-vulnerabilities-and-misaligned-incentives) a valid vulnerability for this package.**
54
+
55
+ ## FAQ
56
+
57
+ ### Why do you test for codes not in the ECMA 48 standard?
58
+
59
+ Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. We test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them.
60
+
61
+ On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out.
62
+
63
+ ## Maintainers
64
+
65
+ - [Sindre Sorhus](https://github.com/sindresorhus)
66
+ - [Josh Junon](https://github.com/qix-)
@@ -0,0 +1,20 @@
1
+ Copyright Mathias Bynens <https://mathiasbynens.be/>
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,107 @@
1
+ # emoji-regex [![Build status](https://github.com/mathiasbynens/emoji-regex/actions/workflows/main.yml/badge.svg)](https://github.com/mathiasbynens/emoji-regex/actions/workflows/main.yml) [![emoji-regex on npm](https://img.shields.io/npm/v/emoji-regex)](https://www.npmjs.com/package/emoji-regex)
2
+
3
+ _emoji-regex_ offers a regular expression to match all emoji symbols and sequences (including textual representations of emoji) as per the Unicode Standard. It’s based on [_emoji-test-regex-pattern_](https://github.com/mathiasbynens/emoji-test-regex-pattern), which generates (at build time) the regular expression pattern based on the Unicode Standard. As a result, _emoji-regex_ can easily be updated whenever new emoji are added to Unicode.
4
+
5
+ Since each version of _emoji-regex_ is tied to the latest Unicode version at the time of release, results are deterministic. This is important for use cases like image replacement, where you want to guarantee that an image asset is available for every possibly matched emoji. If you don’t need a deterministic regex, a lighter-weight, general emoji pattern is available via the [_emoji-regex-xs_](https://github.com/slevithan/emoji-regex-xs) package that follows the same API.
6
+
7
+ ## Installation
8
+
9
+ Via [npm](https://www.npmjs.com/):
10
+
11
+ ```bash
12
+ npm install emoji-regex
13
+ ```
14
+
15
+ In [Node.js](https://nodejs.org/):
16
+
17
+ ```js
18
+ const emojiRegex = require('emoji-regex');
19
+ // Note: because the regular expression has the global flag set, this module
20
+ // exports a function that returns the regex rather than exporting the regular
21
+ // expression itself, to make it impossible to (accidentally) mutate the
22
+ // original regular expression.
23
+
24
+ const text = `
25
+ \u{231A}: ⌚ default emoji presentation character (Emoji_Presentation)
26
+ \u{2194}\u{FE0F}: ↔️ default text presentation character rendered as emoji
27
+ \u{1F469}: 👩 emoji modifier base (Emoji_Modifier_Base)
28
+ \u{1F469}\u{1F3FF}: 👩🏿 emoji modifier base followed by a modifier
29
+ `;
30
+
31
+ const regex = emojiRegex();
32
+ for (const match of text.matchAll(regex)) {
33
+ const emoji = match[0];
34
+ console.log(`Matched sequence ${ emoji } — code points: ${ [...emoji].length }`);
35
+ }
36
+ ```
37
+
38
+ Console output:
39
+
40
+ ```
41
+ Matched sequence ⌚ — code points: 1
42
+ Matched sequence ⌚ — code points: 1
43
+ Matched sequence ↔️ — code points: 2
44
+ Matched sequence ↔️ — code points: 2
45
+ Matched sequence 👩 — code points: 1
46
+ Matched sequence 👩 — code points: 1
47
+ Matched sequence 👩🏿 — code points: 2
48
+ Matched sequence 👩🏿 — code points: 2
49
+ ```
50
+
51
+ ## For maintainers
52
+
53
+ ### How to update emoji-regex after new Unicode Standard releases
54
+
55
+ 1. [Update _emoji-test-regex-pattern_ as described in its repository](https://github.com/mathiasbynens/emoji-test-regex-pattern#how-to-update-emoji-test-regex-pattern-after-new-uts51-releases).
56
+
57
+ 1. Bump the _emoji-test-regex-pattern_ dependency to the latest version.
58
+
59
+ 1. Update the Unicode data dependency in `package.json` by running the following commands:
60
+
61
+ ```sh
62
+ # Example: updating from Unicode v13 to Unicode v14.
63
+ npm uninstall @unicode/unicode-13.0.0
64
+ npm install @unicode/unicode-14.0.0 --save-dev
65
+ ````
66
+
67
+ 1. Generate the new output:
68
+
69
+ ```sh
70
+ npm run build
71
+ ```
72
+
73
+ 1. Verify that tests still pass:
74
+
75
+ ```sh
76
+ npm test
77
+ ```
78
+
79
+ ### How to publish a new release
80
+
81
+ 1. On the `main` branch, bump the emoji-regex version number in `package.json`:
82
+
83
+ ```sh
84
+ npm version patch -m 'Release v%s'
85
+ ```
86
+
87
+ Instead of `patch`, use `minor` or `major` [as needed](https://semver.org/).
88
+
89
+ Note that this produces a Git commit + tag.
90
+
91
+ 1. Push the release commit and tag:
92
+
93
+ ```sh
94
+ git push && git push --tags
95
+ ```
96
+
97
+ Our CI then automatically publishes the new release to npm.
98
+
99
+ ## Author
100
+
101
+ | [![twitter/mathias](https://gravatar.com/avatar/24e08a9ea84deb17ae121074d0f17125?s=70)](https://twitter.com/mathias "Follow @mathias on Twitter") |
102
+ |---|
103
+ | [Mathias Bynens](https://mathiasbynens.be/) |
104
+
105
+ ## License
106
+
107
+ _emoji-regex_ is available under the [MIT](https://mths.be/mit) license.
@@ -0,0 +1,3 @@
1
+ declare module 'emoji-regex' {
2
+ export default function emojiRegex(): RegExp;
3
+ }
@@ -0,0 +1,4 @@
1
+ module.exports = () => {
2
+ // https://mths.be/emoji
3
+ return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
4
+ };
@@ -0,0 +1,4 @@
1
+ export default () => {
2
+ // https://mths.be/emoji
3
+ return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
4
+ };
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "emoji-regex",
3
+ "version": "10.6.0",
4
+ "description": "A regular expression to match all Emoji-only symbols as per the Unicode Standard.",
5
+ "homepage": "https://mths.be/emoji-regex",
6
+ "main": "index.js",
7
+ "module": "index.mjs",
8
+ "types": "index.d.ts",
9
+ "keywords": [
10
+ "unicode",
11
+ "regex",
12
+ "regexp",
13
+ "regular expressions",
14
+ "code points",
15
+ "symbols",
16
+ "characters",
17
+ "emoji"
18
+ ],
19
+ "license": "MIT",
20
+ "author": {
21
+ "name": "Mathias Bynens",
22
+ "url": "https://mathiasbynens.be/"
23
+ },
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "https://github.com/mathiasbynens/emoji-regex.git"
27
+ },
28
+ "bugs": "https://github.com/mathiasbynens/emoji-regex/issues",
29
+ "files": [
30
+ "LICENSE-MIT.txt",
31
+ "index.js",
32
+ "index.d.ts",
33
+ "index.mjs"
34
+ ],
35
+ "scripts": {
36
+ "build": "node script/build.js",
37
+ "test": "mocha",
38
+ "test:watch": "npm run test -- --watch"
39
+ },
40
+ "devDependencies": {
41
+ "@unicode/unicode-17.0.0": "^1.6.10",
42
+ "emoji-test-regex-pattern": "^2.4.0",
43
+ "mocha": "^11.7.2"
44
+ }
45
+ }
@@ -0,0 +1,54 @@
1
+ declare const mimicFn: {
2
+ /**
3
+ Make a function mimic another one. It will copy over the properties `name`, `length`, `displayName`, and any custom properties you may have set.
4
+
5
+ @param to - Mimicking function.
6
+ @param from - Function to mimic.
7
+ @returns The modified `to` function.
8
+
9
+ @example
10
+ ```
11
+ import mimicFn = require('mimic-fn');
12
+
13
+ function foo() {}
14
+ foo.unicorn = '🦄';
15
+
16
+ function wrapper() {
17
+ return foo();
18
+ }
19
+
20
+ console.log(wrapper.name);
21
+ //=> 'wrapper'
22
+
23
+ mimicFn(wrapper, foo);
24
+
25
+ console.log(wrapper.name);
26
+ //=> 'foo'
27
+
28
+ console.log(wrapper.unicorn);
29
+ //=> '🦄'
30
+ ```
31
+ */
32
+ <
33
+ ArgumentsType extends unknown[],
34
+ ReturnType,
35
+ FunctionType extends (...arguments: ArgumentsType) => ReturnType
36
+ >(
37
+ to: (...arguments: ArgumentsType) => ReturnType,
38
+ from: FunctionType
39
+ ): FunctionType;
40
+
41
+ // TODO: Remove this for the next major release, refactor the whole definition to:
42
+ // declare function mimicFn<
43
+ // ArgumentsType extends unknown[],
44
+ // ReturnType,
45
+ // FunctionType extends (...arguments: ArgumentsType) => ReturnType
46
+ // >(
47
+ // to: (...arguments: ArgumentsType) => ReturnType,
48
+ // from: FunctionType
49
+ // ): FunctionType;
50
+ // export = mimicFn;
51
+ default: typeof mimicFn;
52
+ };
53
+
54
+ export = mimicFn;
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ const mimicFn = (to, from) => {
4
+ for (const prop of Reflect.ownKeys(from)) {
5
+ Object.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop));
6
+ }
7
+
8
+ return to;
9
+ };
10
+
11
+ module.exports = mimicFn;
12
+ // TODO: Remove this for the next major release
13
+ module.exports.default = mimicFn;
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
3
+ Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
6
 
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "mimic-fn",
3
+ "version": "2.1.0",
4
+ "description": "Make a function mimic another one",
5
+ "license": "MIT",
6
+ "repository": "sindresorhus/mimic-fn",
7
+ "author": {
8
+ "name": "Sindre Sorhus",
9
+ "email": "sindresorhus@gmail.com",
10
+ "url": "sindresorhus.com"
11
+ },
12
+ "engines": {
13
+ "node": ">=6"
14
+ },
15
+ "scripts": {
16
+ "test": "xo && ava && tsd"
17
+ },
18
+ "files": [
19
+ "index.js",
20
+ "index.d.ts"
21
+ ],
22
+ "keywords": [
23
+ "function",
24
+ "mimic",
25
+ "imitate",
26
+ "rename",
27
+ "copy",
28
+ "inherit",
29
+ "properties",
30
+ "name",
31
+ "func",
32
+ "fn",
33
+ "set",
34
+ "infer",
35
+ "change"
36
+ ],
37
+ "devDependencies": {
38
+ "ava": "^1.4.1",
39
+ "tsd": "^0.7.1",
40
+ "xo": "^0.24.0"
41
+ }
42
+ }
@@ -0,0 +1,69 @@
1
+ # mimic-fn [![Build Status](https://travis-ci.org/sindresorhus/mimic-fn.svg?branch=master)](https://travis-ci.org/sindresorhus/mimic-fn)
2
+
3
+ > Make a function mimic another one
4
+
5
+ Useful when you wrap a function in another function and like to preserve the original name and other properties.
6
+
7
+
8
+ ## Install
9
+
10
+ ```
11
+ $ npm install mimic-fn
12
+ ```
13
+
14
+
15
+ ## Usage
16
+
17
+ ```js
18
+ const mimicFn = require('mimic-fn');
19
+
20
+ function foo() {}
21
+ foo.unicorn = '🦄';
22
+
23
+ function wrapper() {
24
+ return foo();
25
+ }
26
+
27
+ console.log(wrapper.name);
28
+ //=> 'wrapper'
29
+
30
+ mimicFn(wrapper, foo);
31
+
32
+ console.log(wrapper.name);
33
+ //=> 'foo'
34
+
35
+ console.log(wrapper.unicorn);
36
+ //=> '🦄'
37
+ ```
38
+
39
+
40
+ ## API
41
+
42
+ It will copy over the properties `name`, `length`, `displayName`, and any custom properties you may have set.
43
+
44
+ ### mimicFn(to, from)
45
+
46
+ Modifies the `to` function and returns it.
47
+
48
+ #### to
49
+
50
+ Type: `Function`
51
+
52
+ Mimicking function.
53
+
54
+ #### from
55
+
56
+ Type: `Function`
57
+
58
+ Function to mimic.
59
+
60
+
61
+ ## Related
62
+
63
+ - [rename-fn](https://github.com/sindresorhus/rename-fn) - Rename a function
64
+ - [keep-func-props](https://github.com/ehmicky/keep-func-props) - Wrap a function without changing its name, length and other properties
65
+
66
+
67
+ ## License
68
+
69
+ MIT © [Sindre Sorhus](https://sindresorhus.com)