decocms 2.306.6 → 2.306.7

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 (256) hide show
  1. package/dist/client/assets/{AlertCircle-4Fij-rVg.js → AlertCircle-Cb7fTEMa.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-CxNzupMt.js → ArrowNarrowLeft-tcEBzg5K.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-B9s_0HcJ.js → ArrowUpRight-Ds7CgDkL.js} +1 -1
  4. package/dist/client/assets/{Check-DC_iCN8Z.js → Check-Dgq0jjpz.js} +1 -1
  5. package/dist/client/assets/{CheckCircle-ROoANe3f.js → CheckCircle-rZ5sDOOP.js} +1 -1
  6. package/dist/client/assets/{ChevronDown-CnUhTqwX.js → ChevronDown-CH5lQohM.js} +1 -1
  7. package/dist/client/assets/{ChevronRight-X2lm_E9M.js → ChevronRight-DfFDUpKj.js} +1 -1
  8. package/dist/client/assets/{ChevronUp-CgOfWCZA.js → ChevronUp-DCsRkih0.js} +1 -1
  9. package/dist/client/assets/{Container-BrskPoE3.js → Container-zeFPXb1Q.js} +1 -1
  10. package/dist/client/assets/{DotsVertical-C2-ev8jy.js → DotsVertical-BljfGuhu.js} +1 -1
  11. package/dist/client/assets/{LinkExternal01-Bhhv-wHj.js → LinkExternal01-MvI2bZbP.js} +1 -1
  12. package/dist/client/assets/{Lock01-KbqVCyA7.js → Lock01-CidilFiJ.js} +1 -1
  13. package/dist/client/assets/{Palette-CmZGtCez.js → Palette-CURRsupy.js} +1 -1
  14. package/dist/client/assets/{Play-EPgISV5B.js → Play-DLW6aJFn.js} +1 -1
  15. package/dist/client/assets/{Plus-BYimMcAW.js → Plus-28zZOE9T.js} +1 -1
  16. package/dist/client/assets/{RefreshCcw01-DIY3NFBI.js → RefreshCcw01-CCzpYBs0.js} +1 -1
  17. package/dist/client/assets/{SearchMd-DzMVdOJP.js → SearchMd-BpRj1P2W.js} +1 -1
  18. package/dist/client/assets/{Settings02-BxmxMTOA.js → Settings02-CE5ZLw2I.js} +1 -1
  19. package/dist/client/assets/{Shield01-B9vNkAc4.js → Shield01-Dtb2_AeI.js} +1 -1
  20. package/dist/client/assets/{Star01-iULH34rV.js → Star01-ChekdAzX.js} +1 -1
  21. package/dist/client/assets/{Sun-Dc78AQrj.js → Sun-TuktgENq.js} +1 -1
  22. package/dist/client/assets/{Tool01-DVcjHQGB.js → Tool01-Cu4I31F8.js} +1 -1
  23. package/dist/client/assets/{Trash01-CaZrP0UV.js → Trash01-4Dq6ympL.js} +1 -1
  24. package/dist/client/assets/{User01-7U7nAEDg.js → User01-DKnZn118.js} +1 -1
  25. package/dist/client/assets/{Users03-CIZBy7k3.js → Users03-rbWg-6tV.js} +1 -1
  26. package/dist/client/assets/{X-QdBx5oCM.js → X-CAquUT--.js} +1 -1
  27. package/dist/client/assets/{XCircle-DokNvYvs.js → XCircle-B-00qJpY.js} +1 -1
  28. package/dist/client/assets/{XClose-BdbZPqCd.js → XClose-_Y5VAjW5.js} +1 -1
  29. package/dist/client/assets/{Zap-DH1KrJ0w.js → Zap-B8xnzkap.js} +1 -1
  30. package/dist/client/assets/{ZapSquare-CnxL4Bs1.js → ZapSquare-Cpo7Z7gP.js} +1 -1
  31. package/dist/client/assets/{accordion-81SrnINF.js → accordion-CyIKHcCT.js} +1 -1
  32. package/dist/client/assets/{agent-icon-C2zAhw3X.js → agent-icon-D9odI-qh.js} +1 -1
  33. package/dist/client/assets/{agents-list-CH2sTwpj.js → agents-list-CLJAN1rm.js} +1 -1
  34. package/dist/client/assets/ai-providers-28dSCs53.js +1 -0
  35. package/dist/client/assets/{alert-dialog-BytOwrWo.js → alert-dialog-DCT4MTMH.js} +1 -1
  36. package/dist/client/assets/{auth-catchall-BcUDEqD5.js → auth-catchall-DoKHQvfb.js} +1 -1
  37. package/dist/client/assets/{automation-list-row-etrXhG1_.js → automation-list-row-C0fNHM9j.js} +1 -1
  38. package/dist/client/assets/{automations-DFRPWAOO.js → automations-CVam3JT8.js} +1 -1
  39. package/dist/client/assets/{avatar-D0sdobqD.js → avatar-JoKAxyik.js} +1 -1
  40. package/dist/client/assets/{badge-tvsCFCHP.js → badge-BXVtVPzt.js} +1 -1
  41. package/dist/client/assets/{brand-context-Cy-kcB0m.js → brand-context-B00HyWuJ.js} +1 -1
  42. package/dist/client/assets/{card-BGZ5LqAO.js → card-CkFfla-m.js} +1 -1
  43. package/dist/client/assets/{chat-context-iq-Q-O9L.js → chat-context-C4lTxfjV.js} +1 -1
  44. package/dist/client/assets/{checkbox-IEnuEqAm.js → checkbox-Baro7Q1f.js} +1 -1
  45. package/dist/client/assets/{collection-detail-BnoKU_uS.js → collection-detail-CvBw6hsJ.js} +1 -1
  46. package/dist/client/assets/{collection-display-button-tJsvfx8o.js → collection-display-button-BSv13jEo.js} +1 -1
  47. package/dist/client/assets/{collection-search-bjPRZI3g.js → collection-search-BHyuqRiT.js} +1 -1
  48. package/dist/client/assets/{collection-search-O8QAretn.js → collection-search-jhKWbxqo.js} +1 -1
  49. package/dist/client/assets/{collection-table-wrapper-CcyIZki9.js → collection-table-wrapper-hR7H16-N.js} +1 -1
  50. package/dist/client/assets/{collection-tabs-CqINIlN4.js → collection-tabs-BPF8fjT2.js} +1 -1
  51. package/dist/client/assets/{collections-DKW_jlNs.js → collections-B60eBxX4.js} +1 -1
  52. package/dist/client/assets/{command-Cbi8R9Tg.js → command-CJRvOxZ7.js} +1 -1
  53. package/dist/client/assets/{connection-card-Aj-8CWhX.js → connection-card-ugyEg8FF.js} +1 -1
  54. package/dist/client/assets/{connection-detail-G5l6bgwi.js → connection-detail-EgRvIktM.js} +1 -1
  55. package/dist/client/assets/{connection-form-helpers-hlnQqQXV.js → connection-form-helpers-CYrNbtwl.js} +1 -1
  56. package/dist/client/assets/{connections-CrOLesap.js → connections-I35i0t7r.js} +1 -1
  57. package/dist/client/assets/{constants-Dm1wnwL3.js → constants-CMPjFkrZ.js} +1 -1
  58. package/dist/client/assets/{constants-CWAA475A.js → constants-XGFAnuHn.js} +1 -1
  59. package/dist/client/assets/{dialog-0SvGB_9G.js → dialog-sfEBwtz9.js} +1 -1
  60. package/dist/client/assets/{domain-settings-CckaLtjm.js → domain-settings-BEv8OnaD.js} +1 -1
  61. package/dist/client/assets/{drawer-CyXE-C5x.js → drawer--MluJNWl.js} +1 -1
  62. package/dist/client/assets/{dropdown-menu-BkrpBFy3.js → dropdown-menu-BpPFRti7.js} +1 -1
  63. package/dist/client/assets/{dynamic-plugin-layout-DAf8nhzs.js → dynamic-plugin-layout-JwST599m.js} +1 -1
  64. package/dist/client/assets/{empty-state-Crsog8CF.js → empty-state-Be0FdXg2.js} +1 -1
  65. package/dist/client/assets/{empty-state-CxZybw5m.js → empty-state-Vlkqr5Ha.js} +1 -1
  66. package/dist/client/assets/{extract-connection-data-CnUKkwJT.js → extract-connection-data-B9BMTKgA.js} +1 -1
  67. package/dist/client/assets/{features-Ddtjf7i2.js → features-ymCT4sQe.js} +1 -1
  68. package/dist/client/assets/{form-BMjsxf1O.js → form-DpB6tHPK.js} +1 -1
  69. package/dist/client/assets/{general-CVe1Krdt.js → general-Bi8iKo_s.js} +1 -1
  70. package/dist/client/assets/{index-BV4BlnS9.js → index-0dtUnOR1.js} +2 -2
  71. package/dist/client/assets/{index-hSAfwkZQ.js → index-B-PMmlqs.js} +1 -1
  72. package/dist/client/assets/{index-CyJ-TyKU.js → index-BAl-Vlym.js} +1 -1
  73. package/dist/client/assets/{index-WBXV3t9A.js → index-BG0omYxu.js} +1 -1
  74. package/dist/client/assets/{index-CPDZUQ3g.js → index-BWMPhdit.js} +1 -1
  75. package/dist/client/assets/{index-CEyiW6G-.js → index-B_IvwEkx.js} +1 -1
  76. package/dist/client/assets/index-BkJIlnCh.js +1 -0
  77. package/dist/client/assets/{index-CYY5hWbm.js → index-Bzh6y1DZ.js} +1 -1
  78. package/dist/client/assets/{index-AqmdpH5c.js → index-CGKwbcyW.js} +1 -1
  79. package/dist/client/assets/{index-DYUyKEVO.js → index-Cav3nFoE.js} +1 -1
  80. package/dist/client/assets/{index-tIIHK8_r.js → index-DE4jOyEe.js} +1 -1
  81. package/dist/client/assets/{index-DvCRkopi.js → index-DlEDBVDU.js} +1 -1
  82. package/dist/client/assets/{index-CZ5qFDIg.js → index-DqWmbGe9.js} +1 -1
  83. package/dist/client/assets/{index-DusASzPG.js → index-JYp8Y8Zk.js} +3 -3
  84. package/dist/client/assets/{index-B8A_ReFj.js → index-mKsCyZ2c.js} +1 -1
  85. package/dist/client/assets/{index-D85QLvNR.js → index-uTY5VsaX.js} +1 -1
  86. package/dist/client/assets/{infiniteQueryObserver-DmPvCV47.js → infiniteQueryObserver-D69C8aZS.js} +1 -1
  87. package/dist/client/assets/{input-Bs7mkNsF.js → input-Dh3J6cxA.js} +1 -1
  88. package/dist/client/assets/{integration-icon-DgJZ63kl.js → integration-icon-CDE9CENl.js} +1 -1
  89. package/dist/client/assets/{label-CB1YxmGr.js → label-BGhcnROH.js} +1 -1
  90. package/dist/client/assets/{layout-GReGu88m.js → layout-DMQieMve.js} +1 -1
  91. package/dist/client/assets/{lean-canvas-recruit-modal-BkH3ZJD2.js → lean-canvas-recruit-modal-DZfH4ZaB.js} +1 -1
  92. package/dist/client/assets/{login-JiD1cfP5.js → login-HZPNR9xd.js} +1 -1
  93. package/dist/client/assets/{members-B72381x1.js → members-DXQFXjq8.js} +1 -1
  94. package/dist/client/assets/{monaco-editor-_r7N6eV-.js → monaco-editor-BaDnBAIf.js} +1 -1
  95. package/dist/client/assets/{monitoring-stats-row-IV0nDqiB.js → monitoring-stats-row-CQqHcgiv.js} +1 -1
  96. package/dist/client/assets/{oauth-callback-CkFjLbE_.js → oauth-callback-Du4eDSpz.js} +1 -1
  97. package/dist/client/assets/{oauth-callback-ai-provider-By5VSIqz.js → oauth-callback-ai-provider-BhxrV53q.js} +1 -1
  98. package/dist/client/assets/{onboarding-CCZiORGK.js → onboarding-HMRjmRyP.js} +1 -1
  99. package/dist/client/assets/{org-layout-DF3EY572.js → org-layout-DoqHSWQn.js} +1 -1
  100. package/dist/client/assets/{org-plugin-layout-C4CnG2ku.js → org-plugin-layout-DXqded6M.js} +1 -1
  101. package/dist/client/assets/{pair-Hj9vutgK.js → pair-D1MIu7ah.js} +1 -1
  102. package/dist/client/assets/{plugin-empty-state-DtiwhoNI.js → plugin-empty-state-BSfCLmcP.js} +1 -1
  103. package/dist/client/assets/{plugin-header-CjcXnInr.js → plugin-header-2Ks_trAw.js} +1 -1
  104. package/dist/client/assets/{plugin-layout-BJ0qU511.js → plugin-layout-CdtsQwFc.js} +1 -1
  105. package/dist/client/assets/{popover-9-i1guS1.js → popover-D4Clv1Kb.js} +1 -1
  106. package/dist/client/assets/{profile-C0pKX75D.js → profile-CjGu4VCE.js} +1 -1
  107. package/dist/client/assets/{project-app-view-Btui0VFM.js → project-app-view-Cr2YOe9x.js} +1 -1
  108. package/dist/client/assets/registry-YuZMNy-0.js +2 -0
  109. package/dist/client/assets/{registry-layout-Cvjuv72f.js → registry-layout-DGUmz1QL.js} +1 -1
  110. package/dist/client/assets/{required-auth-layout-Cm0GjYeR.js → required-auth-layout-DMKD_TV3.js} +1 -1
  111. package/dist/client/assets/{reset-password-DHyMDEUg.js → reset-password-Bn__ApCp.js} +1 -1
  112. package/dist/client/assets/{roles-BRZ0jwUp.js → roles-C4lGMFwb.js} +1 -1
  113. package/dist/client/assets/{scroll-area-Dal58SLb.js → scroll-area-yWZqBKom.js} +1 -1
  114. package/dist/client/assets/{search-input-BSfMPrXv.js → search-input-UA1Jjc1m.js} +1 -1
  115. package/dist/client/assets/{select-DQy3AX-J.js → select-CG0rwGUX.js} +1 -1
  116. package/dist/client/assets/{select-model-BjvpQUyU.js → select-model-DcRnjECr.js} +1 -1
  117. package/dist/client/assets/{settings-layout-Hke-qhRP.js → settings-layout-ePFy_Zf4.js} +1 -1
  118. package/dist/client/assets/{settings-section-DJf4hau9.js → settings-section-HkZRSntL.js} +1 -1
  119. package/dist/client/assets/{shell-layout-BcsYrOTT.js → shell-layout-CtEV3YzW.js} +1 -1
  120. package/dist/client/assets/{skeleton-DLT024S3.js → skeleton-BxQRt9FI.js} +1 -1
  121. package/dist/client/assets/{sso-BuTvljxJ.js → sso-DElvxw59.js} +1 -1
  122. package/dist/client/assets/{store-Iw0YIysI.js → store-CQloMsrY.js} +1 -1
  123. package/dist/client/assets/store-registry-h--qJyio.js +2 -0
  124. package/dist/client/assets/{switch-ChOgiOZl.js → switch-DydlPJmA.js} +1 -1
  125. package/dist/client/assets/{table-B48Xy50A.js → table-Cg2S62iB.js} +1 -1
  126. package/dist/client/assets/{tabs-y647ki3a.js → tabs-BArWG_lg.js} +1 -1
  127. package/dist/client/assets/{task-status-IiU7o7it.js → task-status-Bi6NGRuA.js} +1 -1
  128. package/dist/client/assets/{textarea-CT4UCcWE.js → textarea-Dkmw6W4u.js} +1 -1
  129. package/dist/client/assets/{toggle-group-CgDVnjbj.js → toggle-group-BdQafmUc.js} +1 -1
  130. package/dist/client/assets/{tools-list-Dl1EqLq_.js → tools-list-C0MslVQp.js} +1 -1
  131. package/dist/client/assets/{tooltip-DZT-1bal.js → tooltip-XW5rFMNu.js} +1 -1
  132. package/dist/client/assets/{types-DA7k1cs0.js → types-BU1oqgjO.js} +1 -1
  133. package/dist/client/assets/{use-ai-providers-Bv-kgplO.js → use-ai-providers-ClmB64W8.js} +1 -1
  134. package/dist/client/assets/{use-collections-ASqcb463.js → use-collections-BLOTVIAP.js} +1 -1
  135. package/dist/client/assets/{use-connection-Ck4brnCx.js → use-connection-DGPnnQz6.js} +1 -1
  136. package/dist/client/assets/{use-copy-qtJD_4jj.js → use-copy-BquaY5FR.js} +1 -1
  137. package/dist/client/assets/{use-create-virtual-mcp-CTxthd0a.js → use-create-virtual-mcp-gYa1vYVG.js} +1 -1
  138. package/dist/client/assets/{use-debounced-autosave-BliXkuEQ.js → use-debounced-autosave-BFE3ZeG7.js} +1 -1
  139. package/dist/client/assets/{use-decopilot-events-tgKj5crX.js → use-decopilot-events-nw-lJk37.js} +1 -1
  140. package/dist/client/assets/{use-delete-connection-DM_4FfQI.js → use-delete-connection-MTPofM5f.js} +1 -1
  141. package/dist/client/assets/{use-infinite-scroll-De_3UNjO.js → use-infinite-scroll-KzNu752x.js} +1 -1
  142. package/dist/client/assets/{use-list-state-SVk88wog.js → use-list-state-BMUfPc5P.js} +1 -1
  143. package/dist/client/assets/{use-mcp-tools-rNZ6JWxz.js → use-mcp-tools-DkxVTDC9.js} +1 -1
  144. package/dist/client/assets/{use-members-Bk-c46d0.js → use-members-DadnCd-C.js} +1 -1
  145. package/dist/client/assets/{use-navigate-to-agent-CwcBoswU.js → use-navigate-to-agent-zDaGGVEB.js} +1 -1
  146. package/dist/client/assets/{use-org-auth-client-Hwc_S6Fw.js → use-org-auth-client-CPZNMqkZ.js} +1 -1
  147. package/dist/client/assets/{use-org-sso-Cj1DBVz0.js → use-org-sso-DMUwA_K8.js} +1 -1
  148. package/dist/client/assets/{use-organization-roles--8BRYJrg.js → use-organization-roles-CJVol15S.js} +1 -1
  149. package/dist/client/assets/{use-organization-settings-gFwljgrZ.js → use-organization-settings-CoHf1k_t.js} +1 -1
  150. package/dist/client/assets/{use-registry-connections-Dgb2TDlG.js → use-registry-connections-DWMBdekg.js} +1 -1
  151. package/dist/client/assets/{use-status-sounds-Cn3fBsPH.js → use-status-sounds-j2IA-viC.js} +1 -1
  152. package/dist/client/assets/{use-tasks-DqNLNkkM.js → use-tasks-DqkYGNHa.js} +1 -1
  153. package/dist/client/assets/{use-view-mode-D9kCRFMC.js → use-view-mode-Bc5J1h4b.js} +1 -1
  154. package/dist/client/assets/{use-virtual-mcp-BR6mzHHD.js → use-virtual-mcp-Dndzl8Kr.js} +1 -1
  155. package/dist/client/assets/useInfiniteQuery-BzvZ_TDh.js +1 -0
  156. package/dist/client/assets/useSuspenseInfiniteQuery-ZnAzp1qO.js +1 -0
  157. package/dist/client/assets/{user-BVu9y1Y7.js → user-Df7A58iD.js} +1 -1
  158. package/dist/client/assets/{view-mode-toggle-ZI-MN1pO.js → view-mode-toggle-DoidsjaP.js} +1 -1
  159. package/dist/client/assets/{workflow-D5sDlQLV.js → workflow-DgvsxaIb.js} +1 -1
  160. package/dist/client/assets/workflow-detail-Bebyclsh.js +1 -0
  161. package/dist/client/index.html +1 -1
  162. package/dist/server/cli.js +90 -38
  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-styles → ansi-regex}/package.json +20 -13
  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/onetime/index.d.ts +64 -0
  174. package/dist/server/node_modules/onetime/index.js +44 -0
  175. package/dist/server/node_modules/onetime/package.json +43 -0
  176. package/dist/server/node_modules/onetime/readme.md +94 -0
  177. package/dist/server/server.js +89 -37
  178. package/package.json +1 -1
  179. package/dist/client/assets/ai-providers-BxrN55-q.js +0 -1
  180. package/dist/client/assets/index-Bhv1nOmU.js +0 -1
  181. package/dist/client/assets/registry-Bhz5Jlkf.js +0 -2
  182. package/dist/client/assets/store-registry-Df9fj_hE.js +0 -2
  183. package/dist/client/assets/useInfiniteQuery-C_BkERX4.js +0 -1
  184. package/dist/client/assets/useSuspenseInfiniteQuery-DFnwwxGS.js +0 -1
  185. package/dist/client/assets/workflow-detail-BKMBH1Ij.js +0 -1
  186. package/dist/server/node_modules/ansi-styles/index.d.ts +0 -236
  187. package/dist/server/node_modules/ansi-styles/index.js +0 -223
  188. package/dist/server/node_modules/ansi-styles/readme.md +0 -173
  189. package/dist/server/node_modules/environment/index.d.ts +0 -74
  190. package/dist/server/node_modules/environment/index.js +0 -47
  191. package/dist/server/node_modules/environment/package.json +0 -74
  192. package/dist/server/node_modules/environment/readme.md +0 -94
  193. package/dist/server/node_modules/escape-string-regexp/index.d.ts +0 -18
  194. package/dist/server/node_modules/escape-string-regexp/index.js +0 -11
  195. package/dist/server/node_modules/escape-string-regexp/license +0 -9
  196. package/dist/server/node_modules/escape-string-regexp/package.json +0 -43
  197. package/dist/server/node_modules/escape-string-regexp/readme.md +0 -29
  198. package/dist/server/node_modules/get-east-asian-width/index.d.ts +0 -60
  199. package/dist/server/node_modules/get-east-asian-width/index.js +0 -30
  200. package/dist/server/node_modules/get-east-asian-width/license +0 -9
  201. package/dist/server/node_modules/get-east-asian-width/lookup-data.js +0 -18
  202. package/dist/server/node_modules/get-east-asian-width/lookup.js +0 -135
  203. package/dist/server/node_modules/get-east-asian-width/package.json +0 -71
  204. package/dist/server/node_modules/get-east-asian-width/readme.md +0 -65
  205. package/dist/server/node_modules/get-east-asian-width/utilities.js +0 -24
  206. package/dist/server/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  207. package/dist/server/node_modules/is-fullwidth-code-point/index.js +0 -12
  208. package/dist/server/node_modules/is-fullwidth-code-point/license +0 -9
  209. package/dist/server/node_modules/is-fullwidth-code-point/package.json +0 -53
  210. package/dist/server/node_modules/is-fullwidth-code-point/readme.md +0 -31
  211. package/dist/server/node_modules/is-unicode-supported/index.d.ts +0 -12
  212. package/dist/server/node_modules/is-unicode-supported/index.js +0 -21
  213. package/dist/server/node_modules/is-unicode-supported/license +0 -9
  214. package/dist/server/node_modules/is-unicode-supported/package.json +0 -47
  215. package/dist/server/node_modules/is-unicode-supported/readme.md +0 -35
  216. package/dist/server/node_modules/pg/LICENSE +0 -21
  217. package/dist/server/node_modules/pg/README.md +0 -95
  218. package/dist/server/node_modules/pg/esm/index.mjs +0 -20
  219. package/dist/server/node_modules/pg/lib/client.js +0 -743
  220. package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
  221. package/dist/server/node_modules/pg/lib/connection.js +0 -221
  222. package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
  223. package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
  224. package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
  225. package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
  226. package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
  227. package/dist/server/node_modules/pg/lib/defaults.js +0 -91
  228. package/dist/server/node_modules/pg/lib/index.js +0 -73
  229. package/dist/server/node_modules/pg/lib/native/client.js +0 -323
  230. package/dist/server/node_modules/pg/lib/native/index.js +0 -2
  231. package/dist/server/node_modules/pg/lib/native/query.js +0 -165
  232. package/dist/server/node_modules/pg/lib/query.js +0 -252
  233. package/dist/server/node_modules/pg/lib/result.js +0 -109
  234. package/dist/server/node_modules/pg/lib/stream.js +0 -83
  235. package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
  236. package/dist/server/node_modules/pg/lib/utils.js +0 -217
  237. package/dist/server/node_modules/pg/package.json +0 -76
  238. package/dist/server/node_modules/restore-cursor/index.d.ts +0 -11
  239. package/dist/server/node_modules/restore-cursor/index.js +0 -11
  240. package/dist/server/node_modules/restore-cursor/license +0 -9
  241. package/dist/server/node_modules/restore-cursor/package.json +0 -55
  242. package/dist/server/node_modules/restore-cursor/readme.md +0 -31
  243. package/dist/server/node_modules/string-width/index.d.ts +0 -39
  244. package/dist/server/node_modules/string-width/index.js +0 -82
  245. package/dist/server/node_modules/string-width/license +0 -9
  246. package/dist/server/node_modules/string-width/package.json +0 -64
  247. package/dist/server/node_modules/string-width/readme.md +0 -66
  248. package/dist/server/node_modules/xtend/.jshintrc +0 -30
  249. package/dist/server/node_modules/xtend/LICENSE +0 -20
  250. package/dist/server/node_modules/xtend/README.md +0 -32
  251. package/dist/server/node_modules/xtend/immutable.js +0 -19
  252. package/dist/server/node_modules/xtend/mutable.js +0 -17
  253. package/dist/server/node_modules/xtend/package.json +0 -55
  254. package/dist/server/node_modules/xtend/test.js +0 -103
  255. /package/dist/server/node_modules/{ansi-styles → ansi-regex}/license +0 -0
  256. /package/dist/server/node_modules/{environment → onetime}/license +0 -0
@@ -1,10 +1,10 @@
1
1
  {
2
- "name": "ansi-styles",
3
- "version": "6.2.3",
4
- "description": "ANSI escape codes for styling strings in the terminal",
2
+ "name": "ansi-regex",
3
+ "version": "6.2.2",
4
+ "description": "Regular expression for matching ANSI escape codes",
5
5
  "license": "MIT",
6
- "repository": "chalk/ansi-styles",
7
- "funding": "https://github.com/chalk/ansi-styles?sponsor=1",
6
+ "repository": "chalk/ansi-regex",
7
+ "funding": "https://github.com/chalk/ansi-regex?sponsor=1",
8
8
  "author": {
9
9
  "name": "Sindre Sorhus",
10
10
  "email": "sindresorhus@gmail.com",
@@ -12,12 +12,14 @@
12
12
  },
13
13
  "type": "module",
14
14
  "exports": "./index.js",
15
+ "types": "./index.d.ts",
16
+ "sideEffects": false,
15
17
  "engines": {
16
18
  "node": ">=12"
17
19
  },
18
20
  "scripts": {
19
21
  "test": "xo && ava && tsd",
20
- "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor"
22
+ "view-supported": "node fixtures/view-codes.js"
21
23
  },
22
24
  "files": [
23
25
  "index.js",
@@ -40,15 +42,20 @@
40
42
  "256",
41
43
  "shell",
42
44
  "xterm",
43
- "log",
44
- "logging",
45
45
  "command-line",
46
- "text"
46
+ "text",
47
+ "regex",
48
+ "regexp",
49
+ "re",
50
+ "match",
51
+ "test",
52
+ "find",
53
+ "pattern"
47
54
  ],
48
55
  "devDependencies": {
49
- "ava": "^6.1.3",
50
- "svg-term-cli": "^2.1.1",
51
- "tsd": "^0.31.1",
52
- "xo": "^0.58.0"
56
+ "ansi-escapes": "^5.0.0",
57
+ "ava": "^3.15.0",
58
+ "tsd": "^0.21.0",
59
+ "xo": "^0.54.2"
53
60
  }
54
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,64 @@
1
+ declare namespace onetime {
2
+ interface Options {
3
+ /**
4
+ Throw an error when called more than once.
5
+
6
+ @default false
7
+ */
8
+ throw?: boolean;
9
+ }
10
+ }
11
+
12
+ declare const onetime: {
13
+ /**
14
+ Ensure a function is only called once. When called multiple times it will return the return value from the first call.
15
+
16
+ @param fn - Function that should only be called once.
17
+ @returns A function that only calls `fn` once.
18
+
19
+ @example
20
+ ```
21
+ import onetime = require('onetime');
22
+
23
+ let i = 0;
24
+
25
+ const foo = onetime(() => ++i);
26
+
27
+ foo(); //=> 1
28
+ foo(); //=> 1
29
+ foo(); //=> 1
30
+
31
+ onetime.callCount(foo); //=> 3
32
+ ```
33
+ */
34
+ <ArgumentsType extends unknown[], ReturnType>(
35
+ fn: (...arguments: ArgumentsType) => ReturnType,
36
+ options?: onetime.Options
37
+ ): (...arguments: ArgumentsType) => ReturnType;
38
+
39
+ /**
40
+ Get the number of times `fn` has been called.
41
+
42
+ @param fn - Function to get call count from.
43
+ @returns A number representing how many times `fn` has been called.
44
+
45
+ @example
46
+ ```
47
+ import onetime = require('onetime');
48
+
49
+ const foo = onetime(() => {});
50
+ foo();
51
+ foo();
52
+ foo();
53
+
54
+ console.log(onetime.callCount(foo));
55
+ //=> 3
56
+ ```
57
+ */
58
+ callCount(fn: (...arguments: any[]) => unknown): number;
59
+
60
+ // TODO: Remove this for the next major release
61
+ default: typeof onetime;
62
+ };
63
+
64
+ export = onetime;
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+ const mimicFn = require('mimic-fn');
3
+
4
+ const calledFunctions = new WeakMap();
5
+
6
+ const onetime = (function_, options = {}) => {
7
+ if (typeof function_ !== 'function') {
8
+ throw new TypeError('Expected a function');
9
+ }
10
+
11
+ let returnValue;
12
+ let callCount = 0;
13
+ const functionName = function_.displayName || function_.name || '<anonymous>';
14
+
15
+ const onetime = function (...arguments_) {
16
+ calledFunctions.set(onetime, ++callCount);
17
+
18
+ if (callCount === 1) {
19
+ returnValue = function_.apply(this, arguments_);
20
+ function_ = null;
21
+ } else if (options.throw === true) {
22
+ throw new Error(`Function \`${functionName}\` can only be called once`);
23
+ }
24
+
25
+ return returnValue;
26
+ };
27
+
28
+ mimicFn(onetime, function_);
29
+ calledFunctions.set(onetime, callCount);
30
+
31
+ return onetime;
32
+ };
33
+
34
+ module.exports = onetime;
35
+ // TODO: Remove this for the next major release
36
+ module.exports.default = onetime;
37
+
38
+ module.exports.callCount = function_ => {
39
+ if (!calledFunctions.has(function_)) {
40
+ throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);
41
+ }
42
+
43
+ return calledFunctions.get(function_);
44
+ };
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "onetime",
3
+ "version": "5.1.2",
4
+ "description": "Ensure a function is only called once",
5
+ "license": "MIT",
6
+ "repository": "sindresorhus/onetime",
7
+ "funding": "https://github.com/sponsors/sindresorhus",
8
+ "author": {
9
+ "name": "Sindre Sorhus",
10
+ "email": "sindresorhus@gmail.com",
11
+ "url": "https://sindresorhus.com"
12
+ },
13
+ "engines": {
14
+ "node": ">=6"
15
+ },
16
+ "scripts": {
17
+ "test": "xo && ava && tsd"
18
+ },
19
+ "files": [
20
+ "index.js",
21
+ "index.d.ts"
22
+ ],
23
+ "keywords": [
24
+ "once",
25
+ "function",
26
+ "one",
27
+ "onetime",
28
+ "func",
29
+ "fn",
30
+ "single",
31
+ "call",
32
+ "called",
33
+ "prevent"
34
+ ],
35
+ "dependencies": {
36
+ "mimic-fn": "^2.1.0"
37
+ },
38
+ "devDependencies": {
39
+ "ava": "^1.4.1",
40
+ "tsd": "^0.7.1",
41
+ "xo": "^0.24.0"
42
+ }
43
+ }
@@ -0,0 +1,94 @@
1
+ # onetime [![Build Status](https://travis-ci.com/sindresorhus/onetime.svg?branch=master)](https://travis-ci.com/github/sindresorhus/onetime)
2
+
3
+ > Ensure a function is only called once
4
+
5
+ When called multiple times it will return the return value from the first call.
6
+
7
+ *Unlike the module [once](https://github.com/isaacs/once), this one isn't naughty and extending `Function.prototype`.*
8
+
9
+ ## Install
10
+
11
+ ```
12
+ $ npm install onetime
13
+ ```
14
+
15
+ ## Usage
16
+
17
+ ```js
18
+ const onetime = require('onetime');
19
+
20
+ let i = 0;
21
+
22
+ const foo = onetime(() => ++i);
23
+
24
+ foo(); //=> 1
25
+ foo(); //=> 1
26
+ foo(); //=> 1
27
+
28
+ onetime.callCount(foo); //=> 3
29
+ ```
30
+
31
+ ```js
32
+ const onetime = require('onetime');
33
+
34
+ const foo = onetime(() => {}, {throw: true});
35
+
36
+ foo();
37
+
38
+ foo();
39
+ //=> Error: Function `foo` can only be called once
40
+ ```
41
+
42
+ ## API
43
+
44
+ ### onetime(fn, options?)
45
+
46
+ Returns a function that only calls `fn` once.
47
+
48
+ #### fn
49
+
50
+ Type: `Function`
51
+
52
+ Function that should only be called once.
53
+
54
+ #### options
55
+
56
+ Type: `object`
57
+
58
+ ##### throw
59
+
60
+ Type: `boolean`\
61
+ Default: `false`
62
+
63
+ Throw an error when called more than once.
64
+
65
+ ### onetime.callCount(fn)
66
+
67
+ Returns a number representing how many times `fn` has been called.
68
+
69
+ Note: It throws an error if you pass in a function that is not wrapped by `onetime`.
70
+
71
+ ```js
72
+ const onetime = require('onetime');
73
+
74
+ const foo = onetime(() => {});
75
+
76
+ foo();
77
+ foo();
78
+ foo();
79
+
80
+ console.log(onetime.callCount(foo));
81
+ //=> 3
82
+ ```
83
+
84
+ #### fn
85
+
86
+ Type: `Function`
87
+
88
+ Function to get call count from.
89
+
90
+ ## onetime for enterprise
91
+
92
+ Available as part of the Tidelift Subscription.
93
+
94
+ The maintainers of onetime 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-onetime?utm_source=npm-onetime&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)