decocms 2.316.3 → 2.318.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (302) hide show
  1. package/dist/client/assets/{AlertCircle-CIhNxTTl.js → AlertCircle-D7In04VZ.js} +1 -1
  2. package/dist/client/assets/{Archive-DOUYQc8s.js → Archive-DaxWSUle.js} +1 -1
  3. package/dist/client/assets/{ArrowNarrowLeft-B1LOVgdw.js → ArrowNarrowLeft-I0Rr4fru.js} +1 -1
  4. package/dist/client/assets/{ArrowUpRight-BXCPGKW0.js → ArrowUpRight-Cl4DoJ1w.js} +1 -1
  5. package/dist/client/assets/{Check-CV-PYcTx.js → Check-nv67ec3-.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-DSnO-ZRF.js → CheckCircle-ByasFo1p.js} +1 -1
  7. package/dist/client/assets/{ChevronDown-d1XZuPx_.js → ChevronDown-Brvsr3Fl.js} +1 -1
  8. package/dist/client/assets/{ChevronRight-OA6RE0bm.js → ChevronRight-PLlU1t0W.js} +1 -1
  9. package/dist/client/assets/{ChevronUp-BPXArXn4.js → ChevronUp-VDqvRLBN.js} +1 -1
  10. package/dist/client/assets/{Container-D2TENyxw.js → Container-DTioRpeZ.js} +1 -1
  11. package/dist/client/assets/{DotsVertical-CkjufnVc.js → DotsVertical-DSgmYETN.js} +1 -1
  12. package/dist/client/assets/{LayoutLeft-CdHsorDG.js → LayoutLeft-CG8cspKX.js} +1 -1
  13. package/dist/client/assets/{LinkExternal01-C_Dp-9up.js → LinkExternal01-FKIQuNsM.js} +1 -1
  14. package/dist/client/assets/{Lock01-DbAsRqsB.js → Lock01-XwPtPsiy.js} +1 -1
  15. package/dist/client/assets/{Palette-TGj5HRZ0.js → Palette-DGf3gs0h.js} +1 -1
  16. package/dist/client/assets/{Play-Bqd6KoLL.js → Play-BUgAN2i6.js} +1 -1
  17. package/dist/client/assets/{Plus-DU1c_qIh.js → Plus-Bk1OvOXE.js} +1 -1
  18. package/dist/client/assets/{RefreshCcw01-D_ZQRj8n.js → RefreshCcw01-CeTSzQsT.js} +1 -1
  19. package/dist/client/assets/{SearchMd-D2HCX03E.js → SearchMd-Bo6RzH5Q.js} +1 -1
  20. package/dist/client/assets/{Settings02-DvgEzqo-.js → Settings02-uL3uu5-7.js} +1 -1
  21. package/dist/client/assets/{Shield01-Bam4M-YR.js → Shield01-OH6-JWjw.js} +1 -1
  22. package/dist/client/assets/{Star01-eRHoMpoz.js → Star01-_us4XpQn.js} +1 -1
  23. package/dist/client/assets/{Sun-CK-d8u_d.js → Sun-Zv-PWUwn.js} +1 -1
  24. package/dist/client/assets/{Tool01-DXA_DwTO.js → Tool01-DUGZCBMz.js} +1 -1
  25. package/dist/client/assets/{Trash01-C98MAtHO.js → Trash01-AR9qKMZU.js} +1 -1
  26. package/dist/client/assets/{User01-Ci3O3rgG.js → User01-3xBsy6wV.js} +1 -1
  27. package/dist/client/assets/{Users03-BE87UJzh.js → Users03-B0r4bSLn.js} +1 -1
  28. package/dist/client/assets/{X-C8gNxXPZ.js → X-DDQYEU6o.js} +1 -1
  29. package/dist/client/assets/{XCircle-DcF4hahE.js → XCircle-B14ynTvz.js} +1 -1
  30. package/dist/client/assets/{XClose-DM_WC7Hv.js → XClose-DwaprZxL.js} +1 -1
  31. package/dist/client/assets/{Zap-BtcijgPp.js → Zap-EburzyyI.js} +1 -1
  32. package/dist/client/assets/{ZapSquare-ugGzur7h.js → ZapSquare-DgAVTy7i.js} +1 -1
  33. package/dist/client/assets/{accordion-eVPt3AxV.js → accordion-CNGIXlRh.js} +1 -1
  34. package/dist/client/assets/{agent-icon-BaSFWyhf.js → agent-icon-CDOpQPVP.js} +1 -1
  35. package/dist/client/assets/{agents-list-Bs-Qg8TC.js → agents-list-Bie-B6KO.js} +1 -1
  36. package/dist/client/assets/{ai-providers-goX3mYeT.js → ai-providers-sx9fCpX9.js} +1 -1
  37. package/dist/client/assets/{alert-dialog-B28bzmjR.js → alert-dialog-DzUiFLm5.js} +1 -1
  38. package/dist/client/assets/{auth-catchall-D8AsZk2D.js → auth-catchall-Db6wnMxY.js} +1 -1
  39. package/dist/client/assets/{automation-list-row-Cw-nvI9t.js → automation-list-row-DA67TUpG.js} +1 -1
  40. package/dist/client/assets/{automations-CIogEm_v.js → automations-D5gbOL8y.js} +1 -1
  41. package/dist/client/assets/{avatar-BccIYZD6.js → avatar-JFkuXk7Y.js} +1 -1
  42. package/dist/client/assets/{badge-B7UYPtu8.js → badge-D0TDvkU5.js} +1 -1
  43. package/dist/client/assets/{brand-context-GjgBMUq2.js → brand-context-VXYVmQXI.js} +1 -1
  44. package/dist/client/assets/{card-e_SApZv-.js → card-NxdWcP2Y.js} +1 -1
  45. package/dist/client/assets/{chat-context-BGitM-1g.js → chat-context-BpeMEIll.js} +1 -1
  46. package/dist/client/assets/{checkbox-BwDKjjzH.js → checkbox-q_vRqr9W.js} +1 -1
  47. package/dist/client/assets/{collection-detail-CWgaM8qe.js → collection-detail-C0n6W9bV.js} +1 -1
  48. package/dist/client/assets/{collection-display-button-C5UVbYH9.js → collection-display-button-BDkguG0j.js} +1 -1
  49. package/dist/client/assets/{collection-search-BSC882az.js → collection-search-B_PTLHi8.js} +1 -1
  50. package/dist/client/assets/{collection-search-CXkehpMy.js → collection-search-CMNBGaQC.js} +1 -1
  51. package/dist/client/assets/{collection-table-wrapper-DBwS-ncE.js → collection-table-wrapper-CCajoTAy.js} +1 -1
  52. package/dist/client/assets/{collection-tabs-BIBHPtug.js → collection-tabs-CAm-q3uz.js} +1 -1
  53. package/dist/client/assets/{collections-CgxUTBvp.js → collections-CreMYLs8.js} +1 -1
  54. package/dist/client/assets/{command-DTQGiHmi.js → command-B9OPYg11.js} +1 -1
  55. package/dist/client/assets/{connection-card-BrngMsBW.js → connection-card-C06IRcu3.js} +1 -1
  56. package/dist/client/assets/{connection-detail-CCeKFmMl.js → connection-detail-z9x5FbvM.js} +1 -1
  57. package/dist/client/assets/{connection-form-helpers-DlHOUpQU.js → connection-form-helpers-n0-EInK6.js} +1 -1
  58. package/dist/client/assets/{connections-BZs9OYYi.js → connections-CH6W6L6i.js} +1 -1
  59. package/dist/client/assets/{constants-aoAzOZlb.js → constants-B0L3jJTH.js} +1 -1
  60. package/dist/client/assets/{constants-CiNOCN3_.js → constants-fVwC9Czh.js} +1 -1
  61. package/dist/client/assets/{dialog-D9JDljl1.js → dialog-qtKrSwKA.js} +1 -1
  62. package/dist/client/assets/{domain-settings-b037kHqN.js → domain-settings-P92TIE-X.js} +1 -1
  63. package/dist/client/assets/{drawer-CPYyZD60.js → drawer-B0OHUPPF.js} +1 -1
  64. package/dist/client/assets/{dropdown-menu-v2GBEFa6.js → dropdown-menu-BnaZE7Qd.js} +1 -1
  65. package/dist/client/assets/{dynamic-plugin-layout-DmLmlikq.js → dynamic-plugin-layout-BLT1-t7U.js} +1 -1
  66. package/dist/client/assets/{empty-state-Qo0QLKm5.js → empty-state-BCr9v4T1.js} +1 -1
  67. package/dist/client/assets/{empty-state-DzxY5CBA.js → empty-state-Bd4cGUaH.js} +1 -1
  68. package/dist/client/assets/{extract-connection-data-C2xJ0Fj_.js → extract-connection-data-D7Vkjtul.js} +1 -1
  69. package/dist/client/assets/{features-_6JkrMwd.js → features-BMjb9wKO.js} +1 -1
  70. package/dist/client/assets/{form-B4UBGEp5.js → form-dz7U0CZK.js} +1 -1
  71. package/dist/client/assets/{general-BHYjmLRM.js → general-jiXD2EYY.js} +1 -1
  72. package/dist/client/assets/index-B1sAFND8.js +1 -0
  73. package/dist/client/assets/{index-cnKKVRZj.js → index-BK7vZkwz.js} +1 -1
  74. package/dist/client/assets/index-BMBxMDI7.js +1 -0
  75. package/dist/client/assets/index-BOaGE1aK.js +1 -0
  76. package/dist/client/assets/{index-C45moMcG.js → index-BTxYkYBr.js} +1 -1
  77. package/dist/client/assets/{index-B85sFotX.js → index-CB6J7z90.js} +1 -1
  78. package/dist/client/assets/{index--m7BENdv.js → index-CHYuwbgr.js} +1 -1
  79. package/dist/client/assets/{index-DoCu980b.js → index-CtMy8ETw.js} +1 -1
  80. package/dist/client/assets/{index-CNmK2UE6.js → index-DTLkaJxe.js} +1 -1
  81. package/dist/client/assets/{index-yZgZglUT.js → index-DrMvBZMW.js} +1 -1
  82. package/dist/client/assets/index-DtJ8d1aI.css +1 -0
  83. package/dist/client/assets/{index-DTJ_e6nL.js → index-KBbmKsy_.js} +1 -1
  84. package/dist/client/assets/{index-Ciepzli1.js → index-OK75u_aS.js} +9 -9
  85. package/dist/client/assets/{index-CsB6QrBB.js → index-dmkCn37I.js} +2 -2
  86. package/dist/client/assets/{index-DXRwI8-Q.js → index-jo98Roqy.js} +1 -1
  87. package/dist/client/assets/index-xstkyz4B.js +547 -0
  88. package/dist/client/assets/{index-D379-Ra5.js → index-y8RdJ-mt.js} +1 -1
  89. package/dist/client/assets/{infiniteQueryObserver-C-liTxtI.js → infiniteQueryObserver-BGrXNOzy.js} +1 -1
  90. package/dist/client/assets/{input-C-eXOMYP.js → input-C0h7cNmt.js} +1 -1
  91. package/dist/client/assets/{integration-icon-Ckowj_b4.js → integration-icon-PH7vkQ9v.js} +1 -1
  92. package/dist/client/assets/{label-C3Wj5fRJ.js → label-C5ENUwLS.js} +1 -1
  93. package/dist/client/assets/{layout-DyhaKtIo.js → layout-BamLP3Zj.js} +1 -1
  94. package/dist/client/assets/{lean-canvas-recruit-modal-B7oEpItL.js → lean-canvas-recruit-modal-CZMvychF.js} +1 -1
  95. package/dist/client/assets/{login-BfSyXKzY.js → login-uG1nFl44.js} +1 -1
  96. package/dist/client/assets/{members-2l-bN7R0.js → members-fSWoT1uJ.js} +1 -1
  97. package/dist/client/assets/{monaco-editor-2DI4BCuN.js → monaco-editor-eJWlN-2G.js} +1 -1
  98. package/dist/client/assets/{monitoring-stats-row-O0i0E0sX.js → monitoring-stats-row-CYIwSwNt.js} +1 -1
  99. package/dist/client/assets/{oauth-callback-FXnsziuV.js → oauth-callback-DIrOvKws.js} +1 -1
  100. package/dist/client/assets/{oauth-callback-ai-provider-B_mMMBGP.js → oauth-callback-ai-provider-CNRYQgK6.js} +1 -1
  101. package/dist/client/assets/{onboarding-C3R9iT7_.js → onboarding-BBHY-5YM.js} +1 -1
  102. package/dist/client/assets/{org-layout-C5vsvaCJ.js → org-layout-D7UrUDGp.js} +1 -1
  103. package/dist/client/assets/{org-plugin-layout-TVmKREDe.js → org-plugin-layout-DqfPxjfL.js} +1 -1
  104. package/dist/client/assets/{pair-C-p-DbTv.js → pair-BJSIhyuY.js} +2 -2
  105. package/dist/client/assets/{plugin-empty-state-DsUYr3t-.js → plugin-empty-state-BP62tfBa.js} +1 -1
  106. package/dist/client/assets/{plugin-header-92zfiruf.js → plugin-header-BPz_4aBZ.js} +1 -1
  107. package/dist/client/assets/{plugin-layout-Ci2Gezpo.js → plugin-layout-BvUSBgIT.js} +1 -1
  108. package/dist/client/assets/{popover-DaEdoMLv.js → popover-9waMMdOC.js} +1 -1
  109. package/dist/client/assets/{profile-C64u-o9k.js → profile-BW02PQou.js} +1 -1
  110. package/dist/client/assets/{project-app-view-__Y1p7Pu.js → project-app-view-kQIX2VaC.js} +1 -1
  111. package/dist/client/assets/registry-BohcIySS.js +2 -0
  112. package/dist/client/assets/{registry-layout-BA3b7Khm.js → registry-layout-C0qSEWQT.js} +1 -1
  113. package/dist/client/assets/{required-auth-layout-CKWnvSJk.js → required-auth-layout-BVmXc_2r.js} +1 -1
  114. package/dist/client/assets/{reset-password-BqmAkVAO.js → reset-password-B1_rk5lV.js} +1 -1
  115. package/dist/client/assets/{roles-99Si_WzF.js → roles-D5G81cT_.js} +1 -1
  116. package/dist/client/assets/{scroll-area-BMqRsz1X.js → scroll-area-xE7hc-8l.js} +1 -1
  117. package/dist/client/assets/{search-input-DsCiCzet.js → search-input-C1skYPKA.js} +1 -1
  118. package/dist/client/assets/{select-B7los4LB.js → select-BjC54T39.js} +1 -1
  119. package/dist/client/assets/{select-model-CC6Vrb5m.js → select-model-CLZn_-xL.js} +1 -1
  120. package/dist/client/assets/{settings-layout-nfV08EHo.js → settings-layout-BhnclKCP.js} +1 -1
  121. package/dist/client/assets/{settings-section-CkhTzM-S.js → settings-section-CijJZPn7.js} +1 -1
  122. package/dist/client/assets/{shell-layout-kk9CghF9.js → shell-layout-DU81GX4X.js} +1 -1
  123. package/dist/client/assets/{sidebar-YQQk47mU.js → sidebar-sY4KII-w.js} +1 -1
  124. package/dist/client/assets/{skeleton-DyIf1f58.js → skeleton-De5l7OL1.js} +1 -1
  125. package/dist/client/assets/{spinner-Cx3i9jg1.js → spinner-CsMegR0e.js} +1 -1
  126. package/dist/client/assets/{sso-BdnItz6L.js → sso-CrRO0aCM.js} +1 -1
  127. package/dist/client/assets/{store-BkZwsjod.js → store-CJkx6fS3.js} +1 -1
  128. package/dist/client/assets/store-registry-DoOjurxP.js +2 -0
  129. package/dist/client/assets/{switch-Ba58imnw.js → switch-Dg8MplKB.js} +1 -1
  130. package/dist/client/assets/{table-BR31N60P.js → table-CcD56_bf.js} +1 -1
  131. package/dist/client/assets/{tabs-DgJzKZHT.js → tabs-Bun7zdDt.js} +1 -1
  132. package/dist/client/assets/{task-status-BAiKcdqG.js → task-status-n57TCkuM.js} +1 -1
  133. package/dist/client/assets/{textarea-CT2Jghcd.js → textarea-Da3AWsK6.js} +1 -1
  134. package/dist/client/assets/{toggle-group-BwCswIiA.js → toggle-group-DDewxrST.js} +1 -1
  135. package/dist/client/assets/{tools-list-Dkz550hJ.js → tools-list-ufT0EENN.js} +1 -1
  136. package/dist/client/assets/{tooltip-v9goNoMa.js → tooltip-DHpEGVi8.js} +1 -1
  137. package/dist/client/assets/{types-D30V4GBK.js → types-BrFLFb5i.js} +1 -1
  138. package/dist/client/assets/{use-ai-providers-DuJ557zy.js → use-ai-providers-Cf9shvYI.js} +1 -1
  139. package/dist/client/assets/{use-collections-CfoSjDkZ.js → use-collections-XDqst4E_.js} +1 -1
  140. package/dist/client/assets/{use-connection-CL8Sz4aB.js → use-connection-BCPpnVMX.js} +1 -1
  141. package/dist/client/assets/{use-copy-9B_lKCQP.js → use-copy-BNSIRmV_.js} +1 -1
  142. package/dist/client/assets/{use-create-virtual-mcp-B4YkhF26.js → use-create-virtual-mcp-DdlYO5qT.js} +1 -1
  143. package/dist/client/assets/{use-debounced-autosave-CnKA4yL_.js → use-debounced-autosave-BnUZVD_o.js} +1 -1
  144. package/dist/client/assets/{use-decopilot-events-CKsjNSwH.js → use-decopilot-events-DTwuBO8M.js} +1 -1
  145. package/dist/client/assets/{use-delete-connection-CdrzrkWw.js → use-delete-connection-B1f9N3vg.js} +1 -1
  146. package/dist/client/assets/{use-infinite-scroll-BYU0Szfl.js → use-infinite-scroll-ByL07kWP.js} +1 -1
  147. package/dist/client/assets/{use-list-state-BV6nWWeI.js → use-list-state-D1Op5rZf.js} +1 -1
  148. package/dist/client/assets/{use-mcp-tools-C0h3zeNG.js → use-mcp-tools-a-ZvbrGo.js} +1 -1
  149. package/dist/client/assets/{use-members-Bc88CE0J.js → use-members-BGu0mh45.js} +1 -1
  150. package/dist/client/assets/{use-navigate-to-agent-D3pu_YG_.js → use-navigate-to-agent-DjWaqrlh.js} +1 -1
  151. package/dist/client/assets/{use-org-auth-client-DKocDk2P.js → use-org-auth-client-B7YA_80Y.js} +1 -1
  152. package/dist/client/assets/{use-org-sso-Cow3Y2YN.js → use-org-sso-CWD9kAdD.js} +1 -1
  153. package/dist/client/assets/{use-organization-roles-B-MXbHky.js → use-organization-roles-BQMmdy5c.js} +1 -1
  154. package/dist/client/assets/{use-organization-settings-BtgJutO3.js → use-organization-settings-C2ni1vuh.js} +1 -1
  155. package/dist/client/assets/{use-registry-connections-CGJfCg9t.js → use-registry-connections-DeY5Qm5r.js} +1 -1
  156. package/dist/client/assets/{use-status-sounds-IPRVjHSk.js → use-status-sounds-CBWZKYGa.js} +1 -1
  157. package/dist/client/assets/{use-tasks-LPt7s23P.js → use-tasks-DZibCf5w.js} +1 -1
  158. package/dist/client/assets/{use-view-mode-NK71s2Nx.js → use-view-mode-C21WimLS.js} +1 -1
  159. package/dist/client/assets/{use-virtual-mcp-CcbuH5vn.js → use-virtual-mcp-BVVlTr3L.js} +1 -1
  160. package/dist/client/assets/useInfiniteQuery-B4rOzvqQ.js +1 -0
  161. package/dist/client/assets/useSuspenseInfiniteQuery-DVCwsKmm.js +1 -0
  162. package/dist/client/assets/{user-CHg0uxVs.js → user-B1UpgZbT.js} +1 -1
  163. package/dist/client/assets/{view-mode-toggle-Ck5p4f38.js → view-mode-toggle-CY3mqueQ.js} +1 -1
  164. package/dist/client/assets/{workflow-DBHhsoUK.js → workflow-D4BXnu1J.js} +1 -1
  165. package/dist/client/assets/workflow-detail-CCg_qRjv.js +1 -0
  166. package/dist/client/index.html +2 -2
  167. package/dist/server/cli.js +1 -1
  168. package/dist/server/node_modules/get-east-asian-width/index.d.ts +60 -0
  169. package/dist/server/node_modules/get-east-asian-width/index.js +30 -0
  170. package/dist/server/node_modules/get-east-asian-width/lookup-data.js +18 -0
  171. package/dist/server/node_modules/get-east-asian-width/lookup.js +135 -0
  172. package/dist/server/node_modules/get-east-asian-width/package.json +71 -0
  173. package/dist/server/node_modules/get-east-asian-width/readme.md +65 -0
  174. package/dist/server/node_modules/get-east-asian-width/utilities.js +24 -0
  175. package/dist/server/node_modules/{xtend → pg}/LICENSE +7 -6
  176. package/dist/server/node_modules/pg/README.md +95 -0
  177. package/dist/server/node_modules/pg/esm/index.mjs +20 -0
  178. package/dist/server/node_modules/pg/lib/client.js +743 -0
  179. package/dist/server/node_modules/pg/lib/connection-parameters.js +171 -0
  180. package/dist/server/node_modules/pg/lib/connection.js +221 -0
  181. package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +122 -0
  182. package/dist/server/node_modules/pg/lib/crypto/sasl.js +212 -0
  183. package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +43 -0
  184. package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +89 -0
  185. package/dist/server/node_modules/pg/lib/crypto/utils.js +9 -0
  186. package/dist/server/node_modules/pg/lib/defaults.js +91 -0
  187. package/dist/server/node_modules/pg/lib/index.js +73 -0
  188. package/dist/server/node_modules/pg/lib/native/client.js +323 -0
  189. package/dist/server/node_modules/pg/lib/native/index.js +2 -0
  190. package/dist/server/node_modules/pg/lib/native/query.js +165 -0
  191. package/dist/server/node_modules/pg/lib/query.js +252 -0
  192. package/dist/server/node_modules/pg/lib/result.js +109 -0
  193. package/dist/server/node_modules/pg/lib/stream.js +83 -0
  194. package/dist/server/node_modules/pg/lib/type-overrides.js +35 -0
  195. package/dist/server/node_modules/pg/lib/utils.js +217 -0
  196. package/dist/server/node_modules/pg/package.json +76 -0
  197. package/dist/server/node_modules/slice-ansi/index.d.ts +19 -0
  198. package/dist/server/node_modules/slice-ansi/index.js +260 -0
  199. package/dist/server/node_modules/{ansi-styles → slice-ansi}/license +1 -0
  200. package/dist/server/node_modules/slice-ansi/package.json +59 -0
  201. package/dist/server/node_modules/slice-ansi/readme.md +54 -0
  202. package/dist/server/node_modules/slice-ansi/tokenize-ansi.js +752 -0
  203. package/package.json +1 -1
  204. package/dist/client/assets/index-9VIcQuRp.js +0 -1
  205. package/dist/client/assets/index-BJOFaTKm.js +0 -1
  206. package/dist/client/assets/index-Bo94M6wo.css +0 -1
  207. package/dist/client/assets/index-D5NG6paH.js +0 -547
  208. package/dist/client/assets/index-DW1EySXD.js +0 -1
  209. package/dist/client/assets/registry-LJpFNvAF.js +0 -2
  210. package/dist/client/assets/store-registry-Dr7mJzaG.js +0 -2
  211. package/dist/client/assets/useInfiniteQuery-BIRZrmWs.js +0 -1
  212. package/dist/client/assets/useSuspenseInfiniteQuery-Bq4CZEUT.js +0 -1
  213. package/dist/client/assets/workflow-detail-BIpbk5VT.js +0 -1
  214. package/dist/server/node_modules/ansi-regex/index.d.ts +0 -33
  215. package/dist/server/node_modules/ansi-regex/index.js +0 -14
  216. package/dist/server/node_modules/ansi-regex/package.json +0 -61
  217. package/dist/server/node_modules/ansi-regex/readme.md +0 -66
  218. package/dist/server/node_modules/ansi-styles/index.d.ts +0 -236
  219. package/dist/server/node_modules/ansi-styles/index.js +0 -223
  220. package/dist/server/node_modules/ansi-styles/package.json +0 -54
  221. package/dist/server/node_modules/ansi-styles/readme.md +0 -173
  222. package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  223. package/dist/server/node_modules/emoji-regex/README.md +0 -107
  224. package/dist/server/node_modules/emoji-regex/index.d.ts +0 -3
  225. package/dist/server/node_modules/emoji-regex/index.js +0 -4
  226. package/dist/server/node_modules/emoji-regex/index.mjs +0 -4
  227. package/dist/server/node_modules/emoji-regex/package.json +0 -45
  228. package/dist/server/node_modules/environment/index.d.ts +0 -74
  229. package/dist/server/node_modules/environment/index.js +0 -47
  230. package/dist/server/node_modules/environment/license +0 -9
  231. package/dist/server/node_modules/environment/package.json +0 -74
  232. package/dist/server/node_modules/environment/readme.md +0 -94
  233. package/dist/server/node_modules/escape-string-regexp/index.d.ts +0 -18
  234. package/dist/server/node_modules/escape-string-regexp/index.js +0 -11
  235. package/dist/server/node_modules/escape-string-regexp/license +0 -9
  236. package/dist/server/node_modules/escape-string-regexp/package.json +0 -43
  237. package/dist/server/node_modules/escape-string-regexp/readme.md +0 -29
  238. package/dist/server/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  239. package/dist/server/node_modules/is-fullwidth-code-point/index.js +0 -12
  240. package/dist/server/node_modules/is-fullwidth-code-point/license +0 -9
  241. package/dist/server/node_modules/is-fullwidth-code-point/package.json +0 -53
  242. package/dist/server/node_modules/is-fullwidth-code-point/readme.md +0 -31
  243. package/dist/server/node_modules/is-unicode-supported/index.d.ts +0 -12
  244. package/dist/server/node_modules/is-unicode-supported/index.js +0 -21
  245. package/dist/server/node_modules/is-unicode-supported/license +0 -9
  246. package/dist/server/node_modules/is-unicode-supported/package.json +0 -47
  247. package/dist/server/node_modules/is-unicode-supported/readme.md +0 -35
  248. package/dist/server/node_modules/mimic-fn/index.d.ts +0 -54
  249. package/dist/server/node_modules/mimic-fn/index.js +0 -13
  250. package/dist/server/node_modules/mimic-fn/license +0 -9
  251. package/dist/server/node_modules/mimic-fn/package.json +0 -42
  252. package/dist/server/node_modules/mimic-fn/readme.md +0 -69
  253. package/dist/server/node_modules/onetime/index.d.ts +0 -64
  254. package/dist/server/node_modules/onetime/index.js +0 -44
  255. package/dist/server/node_modules/onetime/license +0 -9
  256. package/dist/server/node_modules/onetime/package.json +0 -43
  257. package/dist/server/node_modules/onetime/readme.md +0 -94
  258. package/dist/server/node_modules/pg-int8/LICENSE +0 -13
  259. package/dist/server/node_modules/pg-int8/README.md +0 -16
  260. package/dist/server/node_modules/pg-int8/index.js +0 -100
  261. package/dist/server/node_modules/pg-int8/package.json +0 -24
  262. package/dist/server/node_modules/postgres-array/index.d.ts +0 -4
  263. package/dist/server/node_modules/postgres-array/index.js +0 -97
  264. package/dist/server/node_modules/postgres-array/license +0 -21
  265. package/dist/server/node_modules/postgres-array/package.json +0 -35
  266. package/dist/server/node_modules/postgres-array/readme.md +0 -43
  267. package/dist/server/node_modules/postgres-bytea/index.js +0 -33
  268. package/dist/server/node_modules/postgres-bytea/license +0 -21
  269. package/dist/server/node_modules/postgres-bytea/package.json +0 -34
  270. package/dist/server/node_modules/postgres-bytea/readme.md +0 -34
  271. package/dist/server/node_modules/postgres-date/index.js +0 -116
  272. package/dist/server/node_modules/postgres-date/license +0 -21
  273. package/dist/server/node_modules/postgres-date/package.json +0 -33
  274. package/dist/server/node_modules/postgres-date/readme.md +0 -49
  275. package/dist/server/node_modules/postgres-interval/index.d.ts +0 -20
  276. package/dist/server/node_modules/postgres-interval/index.js +0 -125
  277. package/dist/server/node_modules/postgres-interval/license +0 -21
  278. package/dist/server/node_modules/postgres-interval/package.json +0 -36
  279. package/dist/server/node_modules/postgres-interval/readme.md +0 -48
  280. package/dist/server/node_modules/restore-cursor/index.d.ts +0 -11
  281. package/dist/server/node_modules/restore-cursor/index.js +0 -11
  282. package/dist/server/node_modules/restore-cursor/license +0 -9
  283. package/dist/server/node_modules/restore-cursor/package.json +0 -55
  284. package/dist/server/node_modules/restore-cursor/readme.md +0 -31
  285. package/dist/server/node_modules/split2/LICENSE +0 -13
  286. package/dist/server/node_modules/split2/README.md +0 -85
  287. package/dist/server/node_modules/split2/bench.js +0 -27
  288. package/dist/server/node_modules/split2/index.js +0 -141
  289. package/dist/server/node_modules/split2/package.json +0 -39
  290. package/dist/server/node_modules/split2/test.js +0 -409
  291. package/dist/server/node_modules/string-width/index.d.ts +0 -39
  292. package/dist/server/node_modules/string-width/index.js +0 -82
  293. package/dist/server/node_modules/string-width/license +0 -9
  294. package/dist/server/node_modules/string-width/package.json +0 -64
  295. package/dist/server/node_modules/string-width/readme.md +0 -66
  296. package/dist/server/node_modules/xtend/.jshintrc +0 -30
  297. package/dist/server/node_modules/xtend/README.md +0 -32
  298. package/dist/server/node_modules/xtend/immutable.js +0 -19
  299. package/dist/server/node_modules/xtend/mutable.js +0 -17
  300. package/dist/server/node_modules/xtend/package.json +0 -55
  301. package/dist/server/node_modules/xtend/test.js +0 -103
  302. /package/dist/server/node_modules/{ansi-regex → get-east-asian-width}/license +0 -0
@@ -1,223 +0,0 @@
1
- const ANSI_BACKGROUND_OFFSET = 10;
2
-
3
- const wrapAnsi16 = (offset = 0) => code => `\u001B[${code + offset}m`;
4
-
5
- const wrapAnsi256 = (offset = 0) => code => `\u001B[${38 + offset};5;${code}m`;
6
-
7
- const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`;
8
-
9
- const styles = {
10
- modifier: {
11
- reset: [0, 0],
12
- // 21 isn't widely supported and 22 does the same thing
13
- bold: [1, 22],
14
- dim: [2, 22],
15
- italic: [3, 23],
16
- underline: [4, 24],
17
- overline: [53, 55],
18
- inverse: [7, 27],
19
- hidden: [8, 28],
20
- strikethrough: [9, 29],
21
- },
22
- color: {
23
- black: [30, 39],
24
- red: [31, 39],
25
- green: [32, 39],
26
- yellow: [33, 39],
27
- blue: [34, 39],
28
- magenta: [35, 39],
29
- cyan: [36, 39],
30
- white: [37, 39],
31
-
32
- // Bright color
33
- blackBright: [90, 39],
34
- gray: [90, 39], // Alias of `blackBright`
35
- grey: [90, 39], // Alias of `blackBright`
36
- redBright: [91, 39],
37
- greenBright: [92, 39],
38
- yellowBright: [93, 39],
39
- blueBright: [94, 39],
40
- magentaBright: [95, 39],
41
- cyanBright: [96, 39],
42
- whiteBright: [97, 39],
43
- },
44
- bgColor: {
45
- bgBlack: [40, 49],
46
- bgRed: [41, 49],
47
- bgGreen: [42, 49],
48
- bgYellow: [43, 49],
49
- bgBlue: [44, 49],
50
- bgMagenta: [45, 49],
51
- bgCyan: [46, 49],
52
- bgWhite: [47, 49],
53
-
54
- // Bright color
55
- bgBlackBright: [100, 49],
56
- bgGray: [100, 49], // Alias of `bgBlackBright`
57
- bgGrey: [100, 49], // Alias of `bgBlackBright`
58
- bgRedBright: [101, 49],
59
- bgGreenBright: [102, 49],
60
- bgYellowBright: [103, 49],
61
- bgBlueBright: [104, 49],
62
- bgMagentaBright: [105, 49],
63
- bgCyanBright: [106, 49],
64
- bgWhiteBright: [107, 49],
65
- },
66
- };
67
-
68
- export const modifierNames = Object.keys(styles.modifier);
69
- export const foregroundColorNames = Object.keys(styles.color);
70
- export const backgroundColorNames = Object.keys(styles.bgColor);
71
- export const colorNames = [...foregroundColorNames, ...backgroundColorNames];
72
-
73
- function assembleStyles() {
74
- const codes = new Map();
75
-
76
- for (const [groupName, group] of Object.entries(styles)) {
77
- for (const [styleName, style] of Object.entries(group)) {
78
- styles[styleName] = {
79
- open: `\u001B[${style[0]}m`,
80
- close: `\u001B[${style[1]}m`,
81
- };
82
-
83
- group[styleName] = styles[styleName];
84
-
85
- codes.set(style[0], style[1]);
86
- }
87
-
88
- Object.defineProperty(styles, groupName, {
89
- value: group,
90
- enumerable: false,
91
- });
92
- }
93
-
94
- Object.defineProperty(styles, 'codes', {
95
- value: codes,
96
- enumerable: false,
97
- });
98
-
99
- styles.color.close = '\u001B[39m';
100
- styles.bgColor.close = '\u001B[49m';
101
-
102
- styles.color.ansi = wrapAnsi16();
103
- styles.color.ansi256 = wrapAnsi256();
104
- styles.color.ansi16m = wrapAnsi16m();
105
- styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
106
- styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
107
- styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
108
-
109
- // From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js
110
- Object.defineProperties(styles, {
111
- rgbToAnsi256: {
112
- value(red, green, blue) {
113
- // We use the extended greyscale palette here, with the exception of
114
- // black and white. normal palette only has 4 greyscale shades.
115
- if (red === green && green === blue) {
116
- if (red < 8) {
117
- return 16;
118
- }
119
-
120
- if (red > 248) {
121
- return 231;
122
- }
123
-
124
- return Math.round(((red - 8) / 247) * 24) + 232;
125
- }
126
-
127
- return 16
128
- + (36 * Math.round(red / 255 * 5))
129
- + (6 * Math.round(green / 255 * 5))
130
- + Math.round(blue / 255 * 5);
131
- },
132
- enumerable: false,
133
- },
134
- hexToRgb: {
135
- value(hex) {
136
- const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
137
- if (!matches) {
138
- return [0, 0, 0];
139
- }
140
-
141
- let [colorString] = matches;
142
-
143
- if (colorString.length === 3) {
144
- colorString = [...colorString].map(character => character + character).join('');
145
- }
146
-
147
- const integer = Number.parseInt(colorString, 16);
148
-
149
- return [
150
- /* eslint-disable no-bitwise */
151
- (integer >> 16) & 0xFF,
152
- (integer >> 8) & 0xFF,
153
- integer & 0xFF,
154
- /* eslint-enable no-bitwise */
155
- ];
156
- },
157
- enumerable: false,
158
- },
159
- hexToAnsi256: {
160
- value: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
161
- enumerable: false,
162
- },
163
- ansi256ToAnsi: {
164
- value(code) {
165
- if (code < 8) {
166
- return 30 + code;
167
- }
168
-
169
- if (code < 16) {
170
- return 90 + (code - 8);
171
- }
172
-
173
- let red;
174
- let green;
175
- let blue;
176
-
177
- if (code >= 232) {
178
- red = (((code - 232) * 10) + 8) / 255;
179
- green = red;
180
- blue = red;
181
- } else {
182
- code -= 16;
183
-
184
- const remainder = code % 36;
185
-
186
- red = Math.floor(code / 36) / 5;
187
- green = Math.floor(remainder / 6) / 5;
188
- blue = (remainder % 6) / 5;
189
- }
190
-
191
- const value = Math.max(red, green, blue) * 2;
192
-
193
- if (value === 0) {
194
- return 30;
195
- }
196
-
197
- // eslint-disable-next-line no-bitwise
198
- let result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));
199
-
200
- if (value === 2) {
201
- result += 60;
202
- }
203
-
204
- return result;
205
- },
206
- enumerable: false,
207
- },
208
- rgbToAnsi: {
209
- value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
210
- enumerable: false,
211
- },
212
- hexToAnsi: {
213
- value: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
214
- enumerable: false,
215
- },
216
- });
217
-
218
- return styles;
219
- }
220
-
221
- const ansiStyles = assembleStyles();
222
-
223
- export default ansiStyles;
@@ -1,54 +0,0 @@
1
- {
2
- "name": "ansi-styles",
3
- "version": "6.2.3",
4
- "description": "ANSI escape codes for styling strings in the terminal",
5
- "license": "MIT",
6
- "repository": "chalk/ansi-styles",
7
- "funding": "https://github.com/chalk/ansi-styles?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
- "engines": {
16
- "node": ">=12"
17
- },
18
- "scripts": {
19
- "test": "xo && ava && tsd",
20
- "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor"
21
- },
22
- "files": [
23
- "index.js",
24
- "index.d.ts"
25
- ],
26
- "keywords": [
27
- "ansi",
28
- "styles",
29
- "color",
30
- "colour",
31
- "colors",
32
- "terminal",
33
- "console",
34
- "cli",
35
- "string",
36
- "tty",
37
- "escape",
38
- "formatting",
39
- "rgb",
40
- "256",
41
- "shell",
42
- "xterm",
43
- "log",
44
- "logging",
45
- "command-line",
46
- "text"
47
- ],
48
- "devDependencies": {
49
- "ava": "^6.1.3",
50
- "svg-term-cli": "^2.1.1",
51
- "tsd": "^0.31.1",
52
- "xo": "^0.58.0"
53
- }
54
- }
@@ -1,173 +0,0 @@
1
- # ansi-styles
2
-
3
- > [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal
4
-
5
- You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings.
6
-
7
- ![](screenshot.png)
8
-
9
- ## Install
10
-
11
- ```sh
12
- npm install ansi-styles
13
- ```
14
-
15
- ## Usage
16
-
17
- ```js
18
- import styles from 'ansi-styles';
19
-
20
- console.log(`${styles.green.open}Hello world!${styles.green.close}`);
21
-
22
-
23
- // Color conversion between 256/truecolor
24
- // NOTE: When converting from truecolor to 256 colors, the original color
25
- // may be degraded to fit the new color palette. This means terminals
26
- // that do not support 16 million colors will best-match the
27
- // original color.
28
- console.log(`${styles.color.ansi(styles.rgbToAnsi(199, 20, 250))}Hello World${styles.color.close}`)
29
- console.log(`${styles.color.ansi256(styles.rgbToAnsi256(199, 20, 250))}Hello World${styles.color.close}`)
30
- console.log(`${styles.color.ansi16m(...styles.hexToRgb('#abcdef'))}Hello World${styles.color.close}`)
31
- ```
32
-
33
- ## API
34
-
35
- ### `open` and `close`
36
-
37
- Each style has an `open` and `close` property.
38
-
39
- ### `modifierNames`, `foregroundColorNames`, `backgroundColorNames`, and `colorNames`
40
-
41
- All supported style strings are exposed as an array of strings for convenience. `colorNames` is the combination of `foregroundColorNames` and `backgroundColorNames`.
42
-
43
- This can be useful if you need to validate input:
44
-
45
- ```js
46
- import {modifierNames, foregroundColorNames} from 'ansi-styles';
47
-
48
- console.log(modifierNames.includes('bold'));
49
- //=> true
50
-
51
- console.log(foregroundColorNames.includes('pink'));
52
- //=> false
53
- ```
54
-
55
- ## Styles
56
-
57
- ### Modifiers
58
-
59
- - `reset`
60
- - `bold`
61
- - `dim`
62
- - `italic` *(Not widely supported)*
63
- - `underline`
64
- - `overline` *Supported on VTE-based terminals, the GNOME terminal, mintty, and Git Bash.*
65
- - `inverse`
66
- - `hidden`
67
- - `strikethrough` *(Not widely supported)*
68
-
69
- ### Colors
70
-
71
- - `black`
72
- - `red`
73
- - `green`
74
- - `yellow`
75
- - `blue`
76
- - `magenta`
77
- - `cyan`
78
- - `white`
79
- - `blackBright` (alias: `gray`, `grey`)
80
- - `redBright`
81
- - `greenBright`
82
- - `yellowBright`
83
- - `blueBright`
84
- - `magentaBright`
85
- - `cyanBright`
86
- - `whiteBright`
87
-
88
- ### Background colors
89
-
90
- - `bgBlack`
91
- - `bgRed`
92
- - `bgGreen`
93
- - `bgYellow`
94
- - `bgBlue`
95
- - `bgMagenta`
96
- - `bgCyan`
97
- - `bgWhite`
98
- - `bgBlackBright` (alias: `bgGray`, `bgGrey`)
99
- - `bgRedBright`
100
- - `bgGreenBright`
101
- - `bgYellowBright`
102
- - `bgBlueBright`
103
- - `bgMagentaBright`
104
- - `bgCyanBright`
105
- - `bgWhiteBright`
106
-
107
- ## Advanced usage
108
-
109
- By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module.
110
-
111
- - `styles.modifier`
112
- - `styles.color`
113
- - `styles.bgColor`
114
-
115
- ###### Example
116
-
117
- ```js
118
- import styles from 'ansi-styles';
119
-
120
- console.log(styles.color.green.open);
121
- ```
122
-
123
- Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `styles.codes`, which returns a `Map` with the open codes as keys and close codes as values.
124
-
125
- ###### Example
126
-
127
- ```js
128
- import styles from 'ansi-styles';
129
-
130
- console.log(styles.codes.get(36));
131
- //=> 39
132
- ```
133
-
134
- ## 16 / 256 / 16 million (TrueColor) support
135
-
136
- `ansi-styles` allows converting between various color formats and ANSI escapes, with support for 16, 256 and [16 million colors](https://gist.github.com/XVilka/8346728).
137
-
138
- The following color spaces are supported:
139
-
140
- - `rgb`
141
- - `hex`
142
- - `ansi256`
143
- - `ansi`
144
-
145
- To use these, call the associated conversion function with the intended output, for example:
146
-
147
- ```js
148
- import styles from 'ansi-styles';
149
-
150
- styles.color.ansi(styles.rgbToAnsi(100, 200, 15)); // RGB to 16 color ansi foreground code
151
- styles.bgColor.ansi(styles.hexToAnsi('#C0FFEE')); // HEX to 16 color ansi foreground code
152
-
153
- styles.color.ansi256(styles.rgbToAnsi256(100, 200, 15)); // RGB to 256 color ansi foreground code
154
- styles.bgColor.ansi256(styles.hexToAnsi256('#C0FFEE')); // HEX to 256 color ansi foreground code
155
-
156
- styles.color.ansi16m(100, 200, 15); // RGB to 16 million color foreground code
157
- styles.bgColor.ansi16m(...styles.hexToRgb('#C0FFEE')); // Hex (RGB) to 16 million color foreground code
158
- ```
159
-
160
- ## Related
161
-
162
- - [ansi-escapes](https://github.com/sindresorhus/ansi-escapes) - ANSI escape codes for manipulating the terminal
163
-
164
- ## Maintainers
165
-
166
- - [Sindre Sorhus](https://github.com/sindresorhus)
167
- - [Josh Junon](https://github.com/qix-)
168
-
169
- ## For enterprise
170
-
171
- Available as part of the Tidelift Subscription.
172
-
173
- The maintainers of `ansi-styles` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-ansi-styles?utm_source=npm-ansi-styles&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
@@ -1,20 +0,0 @@
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.
@@ -1,107 +0,0 @@
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.
@@ -1,3 +0,0 @@
1
- declare module 'emoji-regex' {
2
- export default function emojiRegex(): RegExp;
3
- }
@@ -1,4 +0,0 @@
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
- };
@@ -1,4 +0,0 @@
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
- };