db-studio 1.10.0 → 1.12.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 (98) hide show
  1. package/dist/index.js +29 -27
  2. package/dist/index.js.map +1 -1
  3. package/dist/web-dist/assets/_pathlessLayout-C6coCMpi.js +1 -0
  4. package/dist/web-dist/assets/{_pathlessLayout-CEv6uosT.js.map → _pathlessLayout-C6coCMpi.js.map} +1 -1
  5. package/dist/web-dist/assets/_pathlessLayout-DoBLI2ja.js +132 -0
  6. package/dist/web-dist/assets/_pathlessLayout-DoBLI2ja.js.map +1 -0
  7. package/dist/web-dist/assets/_queryId-Chj34V6b.js +1 -0
  8. package/dist/web-dist/assets/{_queryId-Bq64AuuI.js.map → _queryId-Chj34V6b.js.map} +1 -1
  9. package/dist/web-dist/assets/{_table-Bt9of1on.js → _table-Bg4NvAi4.js} +1 -1
  10. package/dist/web-dist/assets/{_table-Bt9of1on.js.map → _table-Bg4NvAi4.js.map} +1 -1
  11. package/dist/web-dist/assets/_table-CHFe8v3q.js +1 -0
  12. package/dist/web-dist/assets/{_table-CQhKMAcZ.js.map → _table-CHFe8v3q.js.map} +1 -1
  13. package/dist/web-dist/assets/ai-assistant-D2oc4TtC.js +1 -0
  14. package/dist/web-dist/assets/ai-assistant-D2oc4TtC.js.map +1 -0
  15. package/dist/web-dist/assets/browser-B3ZulIJb.js +1 -0
  16. package/dist/web-dist/assets/{browser-CFsrLhq1.js.map → browser-B3ZulIJb.js.map} +1 -1
  17. package/dist/web-dist/assets/code-editor-q3FlZk-L.js +9 -0
  18. package/dist/web-dist/assets/code-editor-q3FlZk-L.js.map +1 -0
  19. package/dist/web-dist/assets/database.store-O79u8Fhj.js +1 -0
  20. package/dist/web-dist/assets/database.store-O79u8Fhj.js.map +1 -0
  21. package/dist/web-dist/assets/{dist-B90HBock.js → dist-DBHqGKiG.js} +1 -1
  22. package/dist/web-dist/assets/{dist-B90HBock.js.map → dist-DBHqGKiG.js.map} +1 -1
  23. package/dist/web-dist/assets/{highlighted-body-OFNGDK62-BGFI1Y6G.js → highlighted-body-OFNGDK62-CFFJC4SW.js} +1 -1
  24. package/dist/web-dist/assets/{highlighted-body-OFNGDK62-BGFI1Y6G.js.map → highlighted-body-OFNGDK62-CFFJC4SW.js.map} +1 -1
  25. package/dist/web-dist/assets/icons-CtpwLWUI.js +1 -0
  26. package/dist/web-dist/assets/icons-CtpwLWUI.js.map +1 -0
  27. package/dist/web-dist/assets/index-Cyl_0l9I.css +2 -0
  28. package/dist/web-dist/assets/index-XoXxezo4.js +35 -0
  29. package/dist/web-dist/assets/index-XoXxezo4.js.map +1 -0
  30. package/dist/web-dist/assets/{indexes-BKOZUa9Z.js → indexes-C9QqJKhp.js} +1 -1
  31. package/dist/web-dist/assets/{indexes-BKOZUa9Z.js.map → indexes-C9QqJKhp.js.map} +1 -1
  32. package/dist/web-dist/assets/{logs-DHha3vDy.js → logs-B8ah8F7D.js} +1 -1
  33. package/dist/web-dist/assets/{logs-DHha3vDy.js.map → logs-B8ah8F7D.js.map} +1 -1
  34. package/dist/web-dist/assets/mermaid-GHXKKRXX-TpVEoP0K.js +1 -0
  35. package/dist/web-dist/assets/middleware-CCyr6cvp.js +1 -0
  36. package/dist/web-dist/assets/middleware-CCyr6cvp.js.map +1 -0
  37. package/dist/web-dist/assets/popover-wbdw6Hmx.js +1 -0
  38. package/dist/web-dist/assets/popover-wbdw6Hmx.js.map +1 -0
  39. package/dist/web-dist/assets/queries.store-CoJVGJKk.js +1 -0
  40. package/dist/web-dist/assets/queries.store-CoJVGJKk.js.map +1 -0
  41. package/dist/web-dist/assets/query-runner-Bgs0j50a.js +17 -0
  42. package/dist/web-dist/assets/query-runner-Bgs0j50a.js.map +1 -0
  43. package/dist/web-dist/assets/radix-ui-CgJOuzDv.js +51 -0
  44. package/dist/web-dist/assets/radix-ui-CgJOuzDv.js.map +1 -0
  45. package/dist/web-dist/assets/react-Cxb6eTZp.js +1 -0
  46. package/dist/web-dist/assets/react-Cxb6eTZp.js.map +1 -0
  47. package/dist/web-dist/assets/{react-dom-0lXVP1OR.js → react-dom-yg5bT29P.js} +1 -1
  48. package/dist/web-dist/assets/{react-dom-0lXVP1OR.js.map → react-dom-yg5bT29P.js.map} +1 -1
  49. package/dist/web-dist/assets/redis-value-COa6YzFD.js +1 -0
  50. package/dist/web-dist/assets/{redis-value-CJoRCZun.js.map → redis-value-COa6YzFD.js.map} +1 -1
  51. package/dist/web-dist/assets/runner-DW5iXMmq.js +1 -0
  52. package/dist/web-dist/assets/{runner-CZKDzRoU.js.map → runner-DW5iXMmq.js.map} +1 -1
  53. package/dist/web-dist/assets/schema-CtOicTEt.js +64 -0
  54. package/dist/web-dist/assets/schema-CtOicTEt.js.map +1 -0
  55. package/dist/web-dist/assets/{schema-0sozVL-z.js → schema-oy5o_4bt.js} +1 -1
  56. package/dist/web-dist/assets/{schema-0sozVL-z.js.map → schema-oy5o_4bt.js.map} +1 -1
  57. package/dist/web-dist/assets/{table-CPQhgD-a.js → table-CN9ZTCOi.js} +1 -1
  58. package/dist/web-dist/assets/{table-CPQhgD-a.js.map → table-CN9ZTCOi.js.map} +1 -1
  59. package/dist/web-dist/assets/tanstack-g1w0v_rJ.js +10 -0
  60. package/dist/web-dist/assets/tanstack-g1w0v_rJ.js.map +1 -0
  61. package/dist/web-dist/assets/tooltip-B7gM8xl3.js +9 -0
  62. package/dist/web-dist/assets/tooltip-B7gM8xl3.js.map +1 -0
  63. package/dist/web-dist/assets/{visualizer-DTPn0ywW.js → visualizer-DcEwqmuY.js} +1 -1
  64. package/dist/web-dist/assets/{visualizer-DTPn0ywW.js.map → visualizer-DcEwqmuY.js.map} +1 -1
  65. package/dist/web-dist/index.html +13 -11
  66. package/package.json +1 -1
  67. package/dist/web-dist/assets/_pathlessLayout-CEv6uosT.js +0 -1
  68. package/dist/web-dist/assets/_pathlessLayout-eo6iLvBo.js +0 -132
  69. package/dist/web-dist/assets/_pathlessLayout-eo6iLvBo.js.map +0 -1
  70. package/dist/web-dist/assets/_queryId-Bq64AuuI.js +0 -1
  71. package/dist/web-dist/assets/_table-CQhKMAcZ.js +0 -1
  72. package/dist/web-dist/assets/browser-CFsrLhq1.js +0 -1
  73. package/dist/web-dist/assets/code-editor-DQ86aZkm.js +0 -9
  74. package/dist/web-dist/assets/code-editor-DQ86aZkm.js.map +0 -1
  75. package/dist/web-dist/assets/database.store-KDHkiedw.js +0 -1
  76. package/dist/web-dist/assets/database.store-KDHkiedw.js.map +0 -1
  77. package/dist/web-dist/assets/icons-Bm7rSZLJ.js +0 -1
  78. package/dist/web-dist/assets/icons-Bm7rSZLJ.js.map +0 -1
  79. package/dist/web-dist/assets/index-BtqHnOp0.js +0 -23
  80. package/dist/web-dist/assets/index-BtqHnOp0.js.map +0 -1
  81. package/dist/web-dist/assets/index-ktDWx_UP.css +0 -2
  82. package/dist/web-dist/assets/mermaid-GHXKKRXX-DjR37lQN.js +0 -1
  83. package/dist/web-dist/assets/popover-Cm3PsrMh.js +0 -1
  84. package/dist/web-dist/assets/popover-Cm3PsrMh.js.map +0 -1
  85. package/dist/web-dist/assets/query-runner-6BhVPaC9.js +0 -9
  86. package/dist/web-dist/assets/query-runner-6BhVPaC9.js.map +0 -1
  87. package/dist/web-dist/assets/radix-ui-BUv2Nuc1.js +0 -51
  88. package/dist/web-dist/assets/radix-ui-BUv2Nuc1.js.map +0 -1
  89. package/dist/web-dist/assets/redis-value-CJoRCZun.js +0 -1
  90. package/dist/web-dist/assets/runner-CZKDzRoU.js +0 -1
  91. package/dist/web-dist/assets/schema-cZHeTHA0.js +0 -64
  92. package/dist/web-dist/assets/schema-cZHeTHA0.js.map +0 -1
  93. package/dist/web-dist/assets/tanstack-D6l4LIt3.js +0 -10
  94. package/dist/web-dist/assets/tanstack-D6l4LIt3.js.map +0 -1
  95. package/dist/web-dist/assets/toggle-group-BRWnLosM.js +0 -1
  96. package/dist/web-dist/assets/toggle-group-BRWnLosM.js.map +0 -1
  97. package/dist/web-dist/assets/tooltip-DinwklI8.js +0 -9
  98. package/dist/web-dist/assets/tooltip-DinwklI8.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-editor-q3FlZk-L.js","names":[],"sources":["../../src/utils/constants/runner-editor.ts","../../src/features/query-runner/components/code-editor.tsx"],"sourcesContent":["export const KEYWORDS = [\n\t\"SELECT\",\n\t\"FROM\",\n\t\"WHERE\",\n\t\"INSERT\",\n\t\"UPDATE\",\n\t\"DELETE\",\n\t\"CREATE\",\n\t\"DROP\",\n\t\"ALTER\",\n\t\"TABLE\",\n\t\"INDEX\",\n\t\"VIEW\",\n\t\"DATABASE\",\n\t\"SCHEMA\",\n\t\"FUNCTION\",\n\t\"PROCEDURE\",\n\t\"TRIGGER\",\n\t\"AND\",\n\t\"OR\",\n\t\"NOT\",\n\t\"IN\",\n\t\"BETWEEN\",\n\t\"LIKE\",\n\t\"IS\",\n\t\"NULL\",\n\t\"JOIN\",\n\t\"LEFT\",\n\t\"RIGHT\",\n\t\"INNER\",\n\t\"OUTER\",\n\t\"CROSS\",\n\t\"ON\",\n\t\"USING\",\n\t\"GROUP\",\n\t\"BY\",\n\t\"HAVING\",\n\t\"ORDER\",\n\t\"ASC\",\n\t\"DESC\",\n\t\"LIMIT\",\n\t\"OFFSET\",\n\t\"UNION\",\n\t\"INTERSECT\",\n\t\"EXCEPT\",\n\t\"AS\",\n\t\"DISTINCT\",\n\t\"ALL\",\n\t\"EXISTS\",\n\t\"CASE\",\n\t\"WHEN\",\n\t\"THEN\",\n\t\"ELSE\",\n\t\"END\",\n\t\"WITH\",\n\t\"RECURSIVE\",\n\t\"PRIMARY\",\n\t\"KEY\",\n\t\"FOREIGN\",\n\t\"REFERENCES\",\n\t\"UNIQUE\",\n\t\"CHECK\",\n\t\"DEFAULT\",\n\t\"CASCADE\",\n\t\"RESTRICT\",\n\t\"NO\",\n\t\"ACTION\",\n\t\"SET\",\n\t\"CONSTRAINT\",\n\t\"BEGIN\",\n\t\"COMMIT\",\n\t\"ROLLBACK\",\n\t\"SAVEPOINT\",\n\t\"TRANSACTION\",\n\t\"GRANT\",\n\t\"REVOKE\",\n\t\"PRIVILEGES\",\n\t\"TO\",\n\t\"RETURNING\",\n];\nexport const OPERATORS = [\n\t\"=\",\n\t\">\",\n\t\"<\",\n\t\"!\",\n\t\"~\",\n\t\"?\",\n\t\":\",\n\t\"==\",\n\t\"<=\",\n\t\">=\",\n\t\"!=\",\n\t\"&&\",\n\t\"||\",\n\t\"++\",\n\t\"--\",\n\t\"+\",\n\t\"-\",\n\t\"*\",\n\t\"/\",\n\t\"&\",\n\t\"|\",\n\t\"^\",\n\t\"%\",\n\t\">>\",\n\t\"<<\",\n\t\"+=\",\n\t\"-=\",\n\t\"*=\",\n\t\"/=\",\n\t\"&=\",\n\t\"|=\",\n\t\"^=\",\n\t\"%=\",\n];\n\nexport const BUILTIN_FUNCTIONS = [\n\t\"COUNT\",\n\t\"SUM\",\n\t\"AVG\",\n\t\"MIN\",\n\t\"MAX\",\n\t\"COALESCE\",\n\t\"NULLIF\",\n\t\"CAST\",\n\t\"CONCAT\",\n\t\"SUBSTRING\",\n\t\"LOWER\",\n\t\"UPPER\",\n\t\"TRIM\",\n\t\"LENGTH\",\n\t\"NOW\",\n\t\"CURRENT_DATE\",\n\t\"CURRENT_TIME\",\n\t\"CURRENT_TIMESTAMP\",\n\t\"EXTRACT\",\n\t\"DATE_TRUNC\",\n\t\"AGE\",\n\t\"ARRAY_AGG\",\n\t\"JSON_BUILD_OBJECT\",\n\t\"JSON_AGG\",\n\t\"ROW_NUMBER\",\n\t\"RANK\",\n\t\"DENSE_RANK\",\n\t\"LAG\",\n\t\"LEAD\",\n\t\"FIRST_VALUE\",\n\t\"LAST_VALUE\",\n\t\"STRING_AGG\",\n\t\"GENERATE_SERIES\",\n];\n\nexport const BUILTIN_TYPES = [\n\t\"INTEGER\",\n\t\"INT\",\n\t\"SMALLINT\",\n\t\"BIGINT\",\n\t\"DECIMAL\",\n\t\"NUMERIC\",\n\t\"REAL\",\n\t\"DOUBLE\",\n\t\"PRECISION\",\n\t\"SERIAL\",\n\t\"BIGSERIAL\",\n\t\"VARCHAR\",\n\t\"CHAR\",\n\t\"TEXT\",\n\t\"BOOLEAN\",\n\t\"BOOL\",\n\t\"DATE\",\n\t\"TIME\",\n\t\"TIMESTAMP\",\n\t\"TIMESTAMPTZ\",\n\t\"INTERVAL\",\n\t\"UUID\",\n\t\"JSON\",\n\t\"JSONB\",\n\t\"ARRAY\",\n\t\"BYTEA\",\n\t\"INET\",\n\t\"CIDR\",\n];\n\nexport const SUGGESTIONS = [\n\t\"SELECT\",\n\t\"FROM\",\n\t\"WHERE\",\n\t\"INSERT INTO\",\n\t\"UPDATE\",\n\t\"DELETE FROM\",\n\t\"CREATE TABLE\",\n\t\"DROP TABLE\",\n\t\"ALTER TABLE\",\n\t\"JOIN\",\n\t\"LEFT JOIN\",\n\t\"RIGHT JOIN\",\n\t\"INNER JOIN\",\n\t\"GROUP BY\",\n\t\"ORDER BY\",\n\t\"HAVING\",\n\t\"LIMIT\",\n];\n\nexport const FUNCTIONS = [\n\t\"COUNT(*)\",\n\t\"SUM()\",\n\t\"AVG()\",\n\t\"MIN()\",\n\t\"MAX()\",\n\t\"COALESCE()\",\n\t\"CONCAT()\",\n\t\"NOW()\",\n\t\"CURRENT_DATE\",\n\t\"CURRENT_TIMESTAMP\",\n\t\"STRING_AGG()\",\n\t\"ARRAY_AGG()\",\n\t\"JSON_AGG()\",\n];\n\nexport const DATA_TYPES = [\n\t\"INTEGER\",\n\t\"VARCHAR\",\n\t\"TEXT\",\n\t\"BOOLEAN\",\n\t\"TIMESTAMP\",\n\t\"DATE\",\n\t\"JSON\",\n\t\"JSONB\",\n\t\"UUID\",\n\t\"SERIAL\",\n\t\"BIGSERIAL\",\n];\n","import * as monaco from \"monaco-editor\";\nimport { useEffect, useRef } from \"react\";\nimport { toast } from \"sonner\";\nimport { useTheme } from \"@/hooks/use-theme\";\nimport { usePersonalPreferencesStore } from \"@/stores/personal-preferences.store\";\nimport {\n\tBUILTIN_FUNCTIONS,\n\tBUILTIN_TYPES,\n\tDATA_TYPES,\n\tFUNCTIONS,\n\tKEYWORDS,\n\tOPERATORS,\n\tSUGGESTIONS,\n} from \"@/utils/constants/runner-editor\";\n\ninterface CodeEditorProps {\n\tinitialQuery: string;\n\tqueryId?: string;\n\tsavedQuery: string;\n\tlanguage: \"pgsql\" | \"json\" | \"plaintext\";\n\tonQueryChange: (query: string) => void;\n\tonUnsavedChanges: (hasChanges: boolean) => void;\n\tonExecuteQuery: (query: string) => void;\n\tonFormatQuery: () => void;\n\tonSaveQuery: () => void;\n}\n\nexport const CodeEditor = ({\n\tinitialQuery,\n\tqueryId,\n\tsavedQuery,\n\tlanguage,\n\tonQueryChange,\n\tonUnsavedChanges,\n\tonExecuteQuery,\n\tonSaveQuery,\n}: CodeEditorProps) => {\n\tconst monacoEl = useRef<HTMLDivElement>(null);\n\tconst editorRef = useRef<monaco.editor.IStandaloneCodeEditor | null>(null);\n\tconst { isDark } = useTheme();\n\tconst { editor: editorPreferences } = usePersonalPreferencesStore();\n\n\tuseEffect(() => {\n\t\tif (editorRef.current) {\n\t\t\tmonaco.editor.setTheme(isDark ? \"vs-dark\" : \"vs\");\n\t\t}\n\t}, [isDark]);\n\n\tuseEffect(() => {\n\t\teditorRef.current?.updateOptions({\n\t\t\tfontSize: editorPreferences.fontSize,\n\t\t\twordWrap: editorPreferences.wordWrap ? \"on\" : \"off\",\n\t\t});\n\t\teditorRef.current?.getModel()?.updateOptions({ tabSize: editorPreferences.tabSize });\n\t}, [editorPreferences.fontSize, editorPreferences.wordWrap, editorPreferences.tabSize]);\n\n\tuseEffect(() => {\n\t\tif (!monacoEl.current) return;\n\t\tconst languageDisposables: monaco.IDisposable[] = [];\n\n\t\tif (language === \"pgsql\") {\n\t\t\tmonaco.languages.register({ id: \"pgsql\" });\n\n\t\t\tlanguageDisposables.push(\n\t\t\t\tmonaco.languages.registerDocumentFormattingEditProvider(\"pgsql\", {\n\t\t\t\t\tprovideDocumentFormattingEdits: (model) => {\n\t\t\t\t\t\tconst text = model.getValue();\n\t\t\t\t\t\tconst formatted = text\n\t\t\t\t\t\t\t.replace(/\\s+/g, \" \")\n\t\t\t\t\t\t\t.replace(/\\s*,\\s*/g, \",\\n\\t\")\n\t\t\t\t\t\t\t.replace(\n\t\t\t\t\t\t\t\t/\\b(SELECT|FROM|WHERE|JOIN|LEFT JOIN|RIGHT JOIN|INNER JOIN|GROUP BY|ORDER BY|HAVING|LIMIT|OFFSET)\\b/gi,\n\t\t\t\t\t\t\t\t\"\\n$1\",\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t.replace(/\\b(AND|OR)\\b/gi, \"\\n\\t$1\")\n\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t.split(\"\\n\")\n\t\t\t\t\t\t\t.map((line) => {\n\t\t\t\t\t\t\t\tconst trimmed = line.trim();\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\ttrimmed.startsWith(\"AND\") ||\n\t\t\t\t\t\t\t\t\ttrimmed.startsWith(\"OR\") ||\n\t\t\t\t\t\t\t\t\t/^[^A-Z]/.test(trimmed)\n\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\treturn `\\t${trimmed}`;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn trimmed;\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.join(\"\\n\");\n\n\t\t\t\t\t\treturn [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\trange: model.getFullModelRange(),\n\t\t\t\t\t\t\t\ttext: formatted,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t);\n\n\t\t\tmonaco.languages.setMonarchTokensProvider(\"pgsql\", {\n\t\t\t\tdefaultToken: \"\",\n\t\t\t\ttokenPostfix: \".sql\",\n\t\t\t\tignoreCase: true,\n\n\t\t\t\tkeywords: KEYWORDS,\n\t\t\t\toperators: OPERATORS,\n\t\t\t\tbuiltinFunctions: BUILTIN_FUNCTIONS,\n\t\t\t\tbuiltinTypes: BUILTIN_TYPES,\n\n\t\t\t\ttokenizer: {\n\t\t\t\t\troot: [\n\t\t\t\t\t\t{ include: \"@comments\" },\n\t\t\t\t\t\t{ include: \"@whitespace\" },\n\t\t\t\t\t\t{ include: \"@numbers\" },\n\t\t\t\t\t\t{ include: \"@strings\" },\n\t\t\t\t\t\t{ include: \"@complexIdentifiers\" },\n\t\t\t\t\t\t[/[;,.]/, \"delimiter\"],\n\t\t\t\t\t\t[/[()]/, \"@brackets\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t/[\\w@#$]+/,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcases: {\n\t\t\t\t\t\t\t\t\t\"@keywords\": \"keyword\",\n\t\t\t\t\t\t\t\t\t\"@operators\": \"operator\",\n\t\t\t\t\t\t\t\t\t\"@builtinFunctions\": \"predefined\",\n\t\t\t\t\t\t\t\t\t\"@builtinTypes\": \"type\",\n\t\t\t\t\t\t\t\t\t\"@default\": \"identifier\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[/[<>=!%&+\\-*/|~^]/, \"operator\"],\n\t\t\t\t\t],\n\t\t\t\t\twhitespace: [[/\\s+/, \"white\"]],\n\t\t\t\t\tcomments: [\n\t\t\t\t\t\t[/--+.*/, \"comment\"],\n\t\t\t\t\t\t[/\\/\\*/, { token: \"comment.quote\", next: \"@comment\" }],\n\t\t\t\t\t],\n\t\t\t\t\tcomment: [\n\t\t\t\t\t\t[/[^*/]+/, \"comment\"],\n\t\t\t\t\t\t[/\\*\\//, { token: \"comment.quote\", next: \"@pop\" }],\n\t\t\t\t\t\t[/./, \"comment\"],\n\t\t\t\t\t],\n\t\t\t\t\tnumbers: [\n\t\t\t\t\t\t[/0[xX][0-9a-fA-F]*/, \"number\"],\n\t\t\t\t\t\t[/[$][+-]*\\d*(\\.\\d*)?/, \"number\"],\n\t\t\t\t\t\t[/((\\d+(\\.\\d*)?)|(\\.\\d+))([eE][-+]?\\d+)?/, \"number\"],\n\t\t\t\t\t],\n\t\t\t\t\tstrings: [\n\t\t\t\t\t\t[/'/, { token: \"string\", next: \"@string\" }],\n\t\t\t\t\t\t[/\"/, { token: \"string.double\", next: \"@stringDouble\" }],\n\t\t\t\t\t],\n\t\t\t\t\tstring: [\n\t\t\t\t\t\t[/[^']+/, \"string\"],\n\t\t\t\t\t\t[/''/, \"string\"],\n\t\t\t\t\t\t[/'/, { token: \"string\", next: \"@pop\" }],\n\t\t\t\t\t],\n\t\t\t\t\tstringDouble: [\n\t\t\t\t\t\t[/[^\"]+/, \"string.double\"],\n\t\t\t\t\t\t[/\"\"/, \"string.double\"],\n\t\t\t\t\t\t[/\"/, { token: \"string.double\", next: \"@pop\" }],\n\t\t\t\t\t],\n\t\t\t\t\tcomplexIdentifiers: [\n\t\t\t\t\t\t[/\"/, { token: \"identifier.quote\", next: \"@quotedIdentifier\" }],\n\t\t\t\t\t],\n\t\t\t\t\tquotedIdentifier: [\n\t\t\t\t\t\t[/[^\"]+/, \"identifier\"],\n\t\t\t\t\t\t[/\"\"/, \"identifier\"],\n\t\t\t\t\t\t[/\"/, { token: \"identifier.quote\", next: \"@pop\" }],\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tlanguageDisposables.push(\n\t\t\t\tmonaco.languages.registerCompletionItemProvider(\"pgsql\", {\n\t\t\t\t\tprovideCompletionItems: (model, position) => {\n\t\t\t\t\t\tconst word = model.getWordUntilPosition(position);\n\t\t\t\t\t\tconst range = {\n\t\t\t\t\t\t\tstartLineNumber: position.lineNumber,\n\t\t\t\t\t\t\tendLineNumber: position.lineNumber,\n\t\t\t\t\t\t\tstartColumn: word.startColumn,\n\t\t\t\t\t\t\tendColumn: word.endColumn,\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tconst suggestions = [\n\t\t\t\t\t\t\t...SUGGESTIONS.map((kw) => ({\n\t\t\t\t\t\t\t\tlabel: kw,\n\t\t\t\t\t\t\t\tkind: monaco.languages.CompletionItemKind.Keyword,\n\t\t\t\t\t\t\t\tinsertText: kw,\n\t\t\t\t\t\t\t\trange,\n\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t...FUNCTIONS.map((fn) => ({\n\t\t\t\t\t\t\t\tlabel: fn,\n\t\t\t\t\t\t\t\tkind: monaco.languages.CompletionItemKind.Function,\n\t\t\t\t\t\t\t\tinsertText: fn.includes(\"(*)\") ? fn : fn.replace(\"()\", \"($0)\"),\n\t\t\t\t\t\t\t\tinsertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n\t\t\t\t\t\t\t\trange,\n\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t...DATA_TYPES.map((type) => ({\n\t\t\t\t\t\t\t\tlabel: type,\n\t\t\t\t\t\t\t\tkind: monaco.languages.CompletionItemKind.TypeParameter,\n\t\t\t\t\t\t\t\tinsertText: type,\n\t\t\t\t\t\t\t\trange,\n\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"select-template\",\n\t\t\t\t\t\t\t\tkind: monaco.languages.CompletionItemKind.Snippet,\n\t\t\t\t\t\t\t\tinsertText: [\n\t\t\t\t\t\t\t\t\t\"SELECT ${1:columns}\",\n\t\t\t\t\t\t\t\t\t\"FROM ${2:table}\",\n\t\t\t\t\t\t\t\t\t\"WHERE ${3:condition};\",\n\t\t\t\t\t\t\t\t].join(\"\\n\"),\n\t\t\t\t\t\t\t\tinsertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n\t\t\t\t\t\t\t\tdocumentation: \"SELECT statement template\",\n\t\t\t\t\t\t\t\trange,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"create-table-template\",\n\t\t\t\t\t\t\t\tkind: monaco.languages.CompletionItemKind.Snippet,\n\t\t\t\t\t\t\t\tinsertText: [\n\t\t\t\t\t\t\t\t\t\"CREATE TABLE ${1:table_name} (\",\n\t\t\t\t\t\t\t\t\t\" ${2:id} SERIAL PRIMARY KEY,\",\n\t\t\t\t\t\t\t\t\t\" ${3:column_name} ${4:VARCHAR(255)} ${5:NOT NULL},\",\n\t\t\t\t\t\t\t\t\t\" created_at TIMESTAMP DEFAULT NOW()\",\n\t\t\t\t\t\t\t\t\t\");\",\n\t\t\t\t\t\t\t\t].join(\"\\n\"),\n\t\t\t\t\t\t\t\tinsertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n\t\t\t\t\t\t\t\tdocumentation: \"CREATE TABLE template\",\n\t\t\t\t\t\t\t\trange,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"insert-template\",\n\t\t\t\t\t\t\t\tkind: monaco.languages.CompletionItemKind.Snippet,\n\t\t\t\t\t\t\t\tinsertText: [\n\t\t\t\t\t\t\t\t\t\"INSERT INTO ${1:table} (${2:columns})\",\n\t\t\t\t\t\t\t\t\t\"VALUES (${3:values})\",\n\t\t\t\t\t\t\t\t\t\"RETURNING *;\",\n\t\t\t\t\t\t\t\t].join(\"\\n\"),\n\t\t\t\t\t\t\t\tinsertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n\t\t\t\t\t\t\t\tdocumentation: \"INSERT statement template\",\n\t\t\t\t\t\t\t\trange,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\n\t\t\t\t\t\treturn { suggestions };\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t);\n\t\t}\n\n\t\tconst editorInstance = monaco.editor.create(monacoEl.current, {\n\t\t\tvalue: initialQuery,\n\t\t\tlanguage,\n\t\t\ttheme: isDark ? \"vs-dark\" : \"vs\",\n\t\t\tfontSize: editorPreferences.fontSize,\n\t\t\tminimap: { enabled: false },\n\t\t\tlineNumbers: \"on\",\n\t\t\troundedSelection: true,\n\t\t\tscrollBeyondLastLine: true,\n\t\t\tscrollbar: {\n\t\t\t\thorizontal: \"hidden\",\n\t\t\t\tvertical: \"hidden\",\n\t\t\t\tuseShadows: false,\n\t\t\t\tverticalHasArrows: false,\n\t\t\t\thorizontalHasArrows: false,\n\t\t\t\tarrowSize: 0,\n\t\t\t},\n\t\t\tautomaticLayout: true,\n\t\t\ttabSize: editorPreferences.tabSize,\n\t\t\tinsertSpaces: true,\n\t\t\twordWrap: editorPreferences.wordWrap ? \"on\" : \"off\",\n\t\t\tfolding: true,\n\t\t\tbracketPairColorization: {\n\t\t\t\tenabled: true,\n\t\t\t},\n\t\t\tsuggest: {\n\t\t\t\tshowKeywords: true,\n\t\t\t\tshowSnippets: true,\n\t\t\t},\n\t\t\tquickSuggestions: {\n\t\t\t\tother: true,\n\t\t\t\tcomments: false,\n\t\t\t\tstrings: false,\n\t\t\t},\n\t\t});\n\n\t\teditorRef.current = editorInstance;\n\n\t\teditorInstance.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyCode.Enter, () => {\n\t\t\tconst query = editorInstance.getValue();\n\t\t\tif (!query.trim()) {\n\t\t\t\ttoast.error(\"Query is empty!\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tonExecuteQuery(query);\n\t\t});\n\n\t\teditorInstance.addCommand(\n\t\t\tmonaco.KeyMod.CtrlCmd | monaco.KeyMod.Shift | monaco.KeyCode.KeyF,\n\t\t\t() => {\n\t\t\t\teditorInstance.trigger(\"keyboard\", \"editor.action.formatDocument\", {});\n\t\t\t\ttoast.success(\"Query formatted\");\n\t\t\t},\n\t\t);\n\n\t\teditorInstance.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyS, () => {\n\t\t\tonSaveQuery();\n\t\t});\n\n\t\tonQueryChange(editorInstance.getValue());\n\n\t\tif (queryId) {\n\t\t\tconst initialValue = editorInstance.getValue();\n\t\t\tonUnsavedChanges(initialValue !== savedQuery);\n\t\t} else {\n\t\t\tonUnsavedChanges(false);\n\t\t}\n\n\t\tconst disposable = editorInstance.onDidChangeModelContent(() => {\n\t\t\tconst currentValue = editorInstance.getValue();\n\t\t\tonQueryChange(currentValue);\n\n\t\t\tif (!queryId) {\n\t\t\t\tonUnsavedChanges(false);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tonUnsavedChanges(currentValue !== savedQuery);\n\t\t});\n\n\t\treturn () => {\n\t\t\tfor (const d of languageDisposables) d.dispose();\n\t\t\tdisposable.dispose();\n\t\t\teditorInstance.dispose();\n\t\t};\n\t}, [\n\t\tinitialQuery,\n\t\tqueryId,\n\t\tsavedQuery,\n\t\tlanguage,\n\t\tonQueryChange,\n\t\tonUnsavedChanges,\n\t\tonExecuteQuery,\n\t]);\n\n\treturn (\n\t\t<div\n\t\t\tref={monacoEl}\n\t\t\tclassName=\"flex-1 min-h-0 overflow-y-scroll\"\n\t\t/>\n\t);\n};\n"],"mappings":"kTAAa,EAAW,CACvB,SACA,OACA,QACA,SACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,OACA,WACA,SACA,WACA,YACA,UACA,MACA,KACA,MACA,KACA,UACA,OACA,KACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,KACA,QACA,QACA,KACA,SACA,QACA,MACA,OACA,QACA,SACA,QACA,YACA,SACA,KACA,WACA,MACA,SACA,OACA,OACA,OACA,OACA,MACA,OACA,YACA,UACA,MACA,UACA,aACA,SACA,QACA,UACA,UACA,WACA,KACA,SACA,MACA,aACA,QACA,SACA,WACA,YACA,cACA,QACA,SACA,aACA,KACA,WACD,EACa,EAAY,CACxB,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACD,EAEa,EAAoB,CAChC,QACA,MACA,MACA,MACA,MACA,WACA,SACA,OACA,SACA,YACA,QACA,QACA,OACA,SACA,MACA,eACA,eACA,oBACA,UACA,aACA,MACA,YACA,oBACA,WACA,aACA,OACA,aACA,MACA,OACA,cACA,aACA,aACA,iBACD,EAEa,EAAgB,CAC5B,UACA,MACA,WACA,SACA,UACA,UACA,OACA,SACA,YACA,SACA,YACA,UACA,OACA,OACA,UACA,OACA,OACA,OACA,YACA,cACA,WACA,OACA,OACA,QACA,QACA,QACA,OACA,MACD,EAEa,EAAc,CAC1B,SACA,OACA,QACA,cACA,SACA,cACA,eACA,aACA,cACA,OACA,YACA,aACA,aACA,WACA,WACA,SACA,OACD,EAEa,EAAY,CACxB,WACA,QACA,QACA,QACA,QACA,aACA,WACA,QACA,eACA,oBACA,eACA,cACA,YACD,EAEa,EAAa,CACzB,UACA,UACA,OACA,UACA,YACA,OACA,OACA,QACA,OACA,SACA,WACD,QC5Ma,EAAA,CAAc,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"}
@@ -0,0 +1 @@
1
+ import{r as s}from"./monitoring-B_X9D1H-.js";import{t as r}from"./react-Cxb6eTZp.js";var p=r()((t,c)=>({selectedDatabase:null,setSelectedDatabase:e=>{t({selectedDatabase:e});const{dbType:a}=c();e&&a&&s.capture("db_selected",{db_type:a,database:e})},dbType:null,setDbType:e=>{t({dbType:e}),e&&s.capture("db_connected",{db_type:e})}}));export{p as t};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.store-O79u8Fhj.js","names":[],"sources":["../../src/stores/database.store.ts"],"sourcesContent":["import type { DatabaseTypeSchema } from \"@db-studio/shared/types\";\nimport { create } from \"zustand\";\nimport { posthogAnalytics } from \"@/lib/posthog\";\n\ninterface DatabaseStore {\n\tselectedDatabase: string | null;\n\tsetSelectedDatabase: (database: string | null) => void;\n\tdbType: DatabaseTypeSchema | null;\n\tsetDbType: (dbType: DatabaseTypeSchema | null) => void;\n}\n\nexport const useDatabaseStore = create<DatabaseStore>()((set, get) => ({\n\tselectedDatabase: null,\n\tsetSelectedDatabase: (database) => {\n\t\tset({ selectedDatabase: database });\n\t\tconst { dbType } = get();\n\t\tif (database && dbType)\n\t\t\tposthogAnalytics.capture(\"db_selected\", { db_type: dbType, database });\n\t},\n\tdbType: null,\n\tsetDbType: (dbType) => {\n\t\tset({ dbType });\n\t\tif (dbType) posthogAnalytics.capture(\"db_connected\", { db_type: dbType });\n\t},\n}));\n"],"mappings":"qFAWA,IAAa,EAAmB,EAAsB,EAAC,CAAE,EAAK,KAAS,CACtE,iBAAkB,KAClB,oBAAsB,GAAa,CAClC,EAAI,CAAE,iBAAkB,CAAS,CAAC,EAClC,KAAM,CAAE,OAAA,CAAA,EAAW,EAAI,EACnB,GAAY,GACf,EAAiB,QAAQ,cAAe,CAAE,QAAS,EAAQ,SAAA,CAAS,CAAC,CACvE,EACA,OAAQ,KACR,UAAY,GAAW,CACtB,EAAI,CAAE,OAAA,CAAO,CAAC,EACV,GAAQ,EAAiB,QAAQ,eAAgB,CAAE,QAAS,CAAO,CAAC,CACzE,CACD,EAAE"}
@@ -1 +1 @@
1
- import{r as Ct}from"./rolldown-runtime-CXHxssQy.js";import{ot as Ut}from"./icons-Bm7rSZLJ.js";import{Ot as Xt}from"./radix-ui-BUv2Nuc1.js";var a=Ct(Ut(),1),Wt=Ct(Xt(),1);function qt(o){if(!o||typeof document>"u")return;let e=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",e.appendChild(r),r.styleSheet?r.styleSheet.cssText=o:r.appendChild(document.createTextNode(o))}var Kt=o=>{switch(o){case"success":return Jt;case"info":return te;case"warning":return Zt;case"error":return ee;default:return null}},Gt=Array(12).fill(0),Qt=({visible:o,className:e})=>a.createElement("div",{className:["sonner-loading-wrapper",e].filter(Boolean).join(" "),"data-visible":o},a.createElement("div",{className:"sonner-spinner"},Gt.map((r,u)=>a.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${u}`})))),Jt=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),Zt=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),te=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),ee=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),ae=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},a.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),a.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),oe=()=>{const[o,e]=a.useState(document.hidden);return a.useEffect(()=>{const r=()=>{e(document.hidden)};return document.addEventListener("visibilitychange",r),()=>window.removeEventListener("visibilitychange",r)},[]),o},xt=1,re=class{constructor(){this.subscribe=o=>(this.subscribers.push(o),()=>{const e=this.subscribers.indexOf(o);this.subscribers.splice(e,1)}),this.publish=o=>{this.subscribers.forEach(e=>e(o))},this.addToast=o=>{this.publish(o),this.toasts=[...this.toasts,o]},this.create=o=>{var e;const{message:r,...u}=o,f=typeof o?.id=="number"||((e=o.id)==null?void 0:e.length)>0?o.id:xt++,w=this.toasts.find(b=>b.id===f),E=o.dismissible===void 0?!0:o.dismissible;return this.dismissedToasts.has(f)&&this.dismissedToasts.delete(f),w?this.toasts=this.toasts.map(b=>b.id===f?(this.publish({...b,...o,id:f,title:r}),{...b,...o,id:f,dismissible:E,title:r}):b):this.addToast({title:r,...u,dismissible:E,id:f}),f},this.dismiss=o=>(o?(this.dismissedToasts.add(o),requestAnimationFrame(()=>this.subscribers.forEach(e=>e({id:o,dismiss:!0})))):this.toasts.forEach(e=>{this.subscribers.forEach(r=>r({id:e.id,dismiss:!0}))}),o),this.message=(o,e)=>this.create({...e,message:o}),this.error=(o,e)=>this.create({...e,message:o,type:"error"}),this.success=(o,e)=>this.create({...e,type:"success",message:o}),this.info=(o,e)=>this.create({...e,type:"info",message:o}),this.warning=(o,e)=>this.create({...e,type:"warning",message:o}),this.loading=(o,e)=>this.create({...e,type:"loading",message:o}),this.promise=(o,e)=>{if(!e)return;let r;e.loading!==void 0&&(r=this.create({...e,promise:o,type:"loading",message:e.loading,description:typeof e.description!="function"?e.description:void 0}));const u=Promise.resolve(o instanceof Function?o():o);let f=r!==void 0,w;const E=u.then(async d=>{if(w=["resolve",d],a.isValidElement(d))f=!1,this.create({id:r,type:"default",message:d});else if(se(d)&&!d.ok){f=!1;const s=typeof e.error=="function"?await e.error(`HTTP error! status: ${d.status}`):e.error,_=typeof e.description=="function"?await e.description(`HTTP error! status: ${d.status}`):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"error",description:_,...t})}else if(d instanceof Error){f=!1;const s=typeof e.error=="function"?await e.error(d):e.error,_=typeof e.description=="function"?await e.description(d):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"error",description:_,...t})}else if(e.success!==void 0){f=!1;const s=typeof e.success=="function"?await e.success(d):e.success,_=typeof e.description=="function"?await e.description(d):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"success",description:_,...t})}}).catch(async d=>{if(w=["reject",d],e.error!==void 0){f=!1;const s=typeof e.error=="function"?await e.error(d):e.error,_=typeof e.description=="function"?await e.description(d):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"error",description:_,...t})}}).finally(()=>{f&&(this.dismiss(r),r=void 0),e.finally==null||e.finally.call(e)}),b=()=>new Promise((d,s)=>E.then(()=>w[0]==="reject"?s(w[1]):d(w[1])).catch(s));return typeof r!="string"&&typeof r!="number"?{unwrap:b}:Object.assign(r,{unwrap:b})},this.custom=(o,e)=>{const r=e?.id||xt++;return this.create({jsx:o(r),id:r,...e}),r},this.getActiveToasts=()=>this.toasts.filter(o=>!this.dismissedToasts.has(o.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},S=new re,ne=(o,e)=>{const r=e?.id||xt++;return S.addToast({title:o,...e,id:r}),r},se=o=>o&&typeof o=="object"&&"ok"in o&&typeof o.ok=="boolean"&&"status"in o&&typeof o.status=="number",ie=ne,le=()=>S.toasts,de=()=>S.getActiveToasts(),Te=Object.assign(ie,{success:S.success,info:S.info,warning:S.warning,error:S.error,custom:S.custom,message:S.message,promise:S.promise,dismiss:S.dismiss,loading:S.loading},{getHistory:le,getToasts:de});qt("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function mt(o){return o.label!==void 0}var ce=3,ue="24px",fe="16px",Mt=4e3,me=356,pe=14,ge=45,he=200;function R(...o){return o.filter(Boolean).join(" ")}function ve(o){const[e,r]=o.split("-"),u=[];return e&&u.push(e),r&&u.push(r),u}var be=o=>{var e,r,u,f,w,E,b,d,s;const{invert:_,toast:t,unstyled:H,interacting:ot,setHeights:A,visibleToasts:pt,heights:V,index:l,toasts:rt,expanded:U,removeToast:nt,defaultRichColors:gt,closeButton:O,style:Q,cancelButtonStyle:P,actionButtonStyle:ht,className:st="",descriptionClassName:vt="",duration:J,position:I,gap:it,expandByDefault:Z,classNames:c,icons:y,closeButtonAriaLabel:j="Close toast"}=o,[Y,B]=a.useState(null),[$,lt]=a.useState(null),[i,p]=a.useState(!1),[m,T]=a.useState(!1),[X,g]=a.useState(!1),[dt,ct]=a.useState(!1),[ut,W]=a.useState(!1),[Rt,bt]=a.useState(0),[At,Et]=a.useState(0),tt=a.useRef(t.duration||J||Mt),Tt=a.useRef(null),z=a.useRef(null),Ot=l===0,zt=l+1<=pt,k=t.type,q=t.dismissible!==!1,Ht=t.className||"",jt=t.descriptionClassName||"",ft=a.useMemo(()=>V.findIndex(n=>n.toastId===t.id)||0,[V,t.id]),Lt=a.useMemo(()=>{var n;return(n=t.closeButton)!=null?n:O},[t.closeButton,O]),St=a.useMemo(()=>t.duration||J||Mt,[t.duration,J]),yt=a.useRef(0),K=a.useRef(0),_t=a.useRef(0),G=a.useRef(null),[Pt,Yt]=I.split("-"),kt=a.useMemo(()=>V.reduce((n,h,x)=>x>=ft?n:n+h.height,0),[V,ft]),Nt=oe(),$t=t.invert||_,wt=k==="loading";K.current=a.useMemo(()=>ft*it+kt,[ft,kt]),a.useEffect(()=>{tt.current=St},[St]),a.useEffect(()=>{p(!0)},[]),a.useEffect(()=>{const n=z.current;if(n){const h=n.getBoundingClientRect().height;return Et(h),A(x=>[{toastId:t.id,height:h,position:t.position},...x]),()=>A(x=>x.filter(N=>N.toastId!==t.id))}},[A,t.id]),a.useLayoutEffect(()=>{if(!i)return;const n=z.current,h=n.style.height;n.style.height="auto";const x=n.getBoundingClientRect().height;n.style.height=h,Et(x),A(N=>N.find(v=>v.toastId===t.id)?N.map(v=>v.toastId===t.id?{...v,height:x}:v):[{toastId:t.id,height:x,position:t.position},...N])},[i,t.title,t.description,A,t.id,t.jsx,t.action,t.cancel]);const L=a.useCallback(()=>{T(!0),bt(K.current),A(n=>n.filter(h=>h.toastId!==t.id)),setTimeout(()=>{nt(t)},he)},[t,nt,A,K]);a.useEffect(()=>{if(t.promise&&k==="loading"||t.duration===1/0||t.type==="loading")return;let n;return U||ot||Nt?(()=>{if(_t.current<yt.current){const N=new Date().getTime()-yt.current;tt.current=tt.current-N}_t.current=new Date().getTime()})():tt.current!==1/0&&(yt.current=new Date().getTime(),n=setTimeout(()=>{t.onAutoClose==null||t.onAutoClose.call(t,t),L()},tt.current)),()=>clearTimeout(n)},[U,ot,t,k,Nt,L]),a.useEffect(()=>{t.delete&&(L(),t.onDismiss==null||t.onDismiss.call(t,t))},[L,t.delete]);function Ft(){var n;if(y?.loading){var h;return a.createElement("div",{className:R(c?.loader,t==null||(h=t.classNames)==null?void 0:h.loader,"sonner-loader"),"data-visible":k==="loading"},y.loading)}return a.createElement(Qt,{className:R(c?.loader,t==null||(n=t.classNames)==null?void 0:n.loader),visible:k==="loading"})}const Vt=t.icon||y?.[k]||Kt(k);var Bt,Dt;return a.createElement("li",{tabIndex:0,ref:z,className:R(st,Ht,c?.toast,t==null||(e=t.classNames)==null?void 0:e.toast,c?.default,c?.[k],t==null||(r=t.classNames)==null?void 0:r[k]),"data-sonner-toast":"","data-rich-colors":(Bt=t.richColors)!=null?Bt:gt,"data-styled":!(t.jsx||t.unstyled||H),"data-mounted":i,"data-promise":!!t.promise,"data-swiped":ut,"data-removed":m,"data-visible":zt,"data-y-position":Pt,"data-x-position":Yt,"data-index":l,"data-front":Ot,"data-swiping":X,"data-dismissible":q,"data-type":k,"data-invert":$t,"data-swipe-out":dt,"data-swipe-direction":$,"data-expanded":!!(U||Z&&i),"data-testid":t.testId,style:{"--index":l,"--toasts-before":l,"--z-index":rt.length-l,"--offset":`${m?Rt:K.current}px`,"--initial-height":Z?"auto":`${At}px`,...Q,...t.style},onDragEnd:()=>{g(!1),B(null),G.current=null},onPointerDown:n=>{n.button!==2&&(wt||!q||(Tt.current=new Date,bt(K.current),n.target.setPointerCapture(n.pointerId),n.target.tagName!=="BUTTON"&&(g(!0),G.current={x:n.clientX,y:n.clientY})))},onPointerUp:()=>{var n,h,x;if(dt||!q)return;G.current=null;const N=Number(((n=z.current)==null?void 0:n.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),v=Number(((h=z.current)==null?void 0:h.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),D=new Date().getTime()-((x=Tt.current)==null?void 0:x.getTime()),et=Y==="x"?N:v,C=Math.abs(et)/D;if(Math.abs(et)>=ge||C>.11){bt(K.current),t.onDismiss==null||t.onDismiss.call(t,t),lt(Y==="x"?N>0?"right":"left":v>0?"down":"up"),L(),ct(!0);return}else{var M,at;(M=z.current)==null||M.style.setProperty("--swipe-amount-x","0px"),(at=z.current)==null||at.style.setProperty("--swipe-amount-y","0px")}W(!1),g(!1),B(null)},onPointerMove:n=>{var h,x,N;if(!G.current||!q||((h=window.getSelection())==null?void 0:h.toString().length)>0)return;const v=n.clientY-G.current.y,D=n.clientX-G.current.x;var et;const C=(et=o.swipeDirections)!=null?et:ve(I);!Y&&(Math.abs(D)>1||Math.abs(v)>1)&&B(Math.abs(D)>Math.abs(v)?"x":"y");let M={x:0,y:0};const at=F=>1/(1.5+Math.abs(F)/20);if(Y==="y"){if(C.includes("top")||C.includes("bottom"))if(C.includes("top")&&v<0||C.includes("bottom")&&v>0)M.y=v;else{const F=v*at(v);M.y=Math.abs(F)<Math.abs(v)?F:v}}else if(Y==="x"&&(C.includes("left")||C.includes("right")))if(C.includes("left")&&D<0||C.includes("right")&&D>0)M.x=D;else{const F=D*at(D);M.x=Math.abs(F)<Math.abs(D)?F:D}(Math.abs(M.x)>0||Math.abs(M.y)>0)&&W(!0),(x=z.current)==null||x.style.setProperty("--swipe-amount-x",`${M.x}px`),(N=z.current)==null||N.style.setProperty("--swipe-amount-y",`${M.y}px`)}},Lt&&!t.jsx&&k!=="loading"?a.createElement("button",{"aria-label":j,"data-disabled":wt,"data-close-button":!0,onClick:wt||!q?()=>{}:()=>{L(),t.onDismiss==null||t.onDismiss.call(t,t)},className:R(c?.closeButton,t==null||(u=t.classNames)==null?void 0:u.closeButton)},(Dt=y?.close)!=null?Dt:ae):null,(k||t.icon||t.promise)&&t.icon!==null&&(y?.[k]!==null||t.icon)?a.createElement("div",{"data-icon":"",className:R(c?.icon,t==null||(f=t.classNames)==null?void 0:f.icon)},t.promise||t.type==="loading"&&!t.icon?t.icon||Ft():null,t.type!=="loading"?Vt:null):null,a.createElement("div",{"data-content":"",className:R(c?.content,t==null||(w=t.classNames)==null?void 0:w.content)},a.createElement("div",{"data-title":"",className:R(c?.title,t==null||(E=t.classNames)==null?void 0:E.title)},t.jsx?t.jsx:typeof t.title=="function"?t.title():t.title),t.description?a.createElement("div",{"data-description":"",className:R(vt,jt,c?.description,t==null||(b=t.classNames)==null?void 0:b.description)},typeof t.description=="function"?t.description():t.description):null),a.isValidElement(t.cancel)?t.cancel:t.cancel&&mt(t.cancel)?a.createElement("button",{"data-button":!0,"data-cancel":!0,style:t.cancelButtonStyle||P,onClick:n=>{mt(t.cancel)&&q&&(t.cancel.onClick==null||t.cancel.onClick.call(t.cancel,n),L())},className:R(c?.cancelButton,t==null||(d=t.classNames)==null?void 0:d.cancelButton)},t.cancel.label):null,a.isValidElement(t.action)?t.action:t.action&&mt(t.action)?a.createElement("button",{"data-button":!0,"data-action":!0,style:t.actionButtonStyle||ht,onClick:n=>{mt(t.action)&&(t.action.onClick==null||t.action.onClick.call(t.action,n),!n.defaultPrevented&&L())},className:R(c?.actionButton,t==null||(s=t.classNames)==null?void 0:s.actionButton)},t.action.label):null)};function It(){if(typeof window>"u"||typeof document>"u")return"ltr";const o=document.documentElement.getAttribute("dir");return o==="auto"||!o?window.getComputedStyle(document.documentElement).direction:o}function ye(o,e){const r={};return[o,e].forEach((u,f)=>{const w=f===1,E=w?"--mobile-offset":"--offset",b=w?fe:ue;function d(s){["top","right","bottom","left"].forEach(_=>{r[`${E}-${_}`]=typeof s=="number"?`${s}px`:s})}typeof u=="number"||typeof u=="string"?d(u):typeof u=="object"?["top","right","bottom","left"].forEach(s=>{u[s]===void 0?r[`${E}-${s}`]=b:r[`${E}-${s}`]=typeof u[s]=="number"?`${u[s]}px`:u[s]}):d(b)}),r}var Se=a.forwardRef(function(e,r){const{id:u,invert:f,position:w="bottom-right",hotkey:E=["altKey","KeyT"],expand:b,closeButton:d,className:s,offset:_,mobileOffset:t,theme:H="light",richColors:ot,duration:A,style:pt,visibleToasts:V=ce,toastOptions:l,dir:rt=It(),gap:U=pe,icons:nt,containerAriaLabel:gt="Notifications"}=e,[O,Q]=a.useState([]),P=a.useMemo(()=>u?O.filter(i=>i.toasterId===u):O.filter(i=>!i.toasterId),[O,u]),ht=a.useMemo(()=>Array.from(new Set([w].concat(P.filter(i=>i.position).map(i=>i.position)))),[P,w]),[st,vt]=a.useState([]),[J,I]=a.useState(!1),[it,Z]=a.useState(!1),[c,y]=a.useState(H!=="system"?H:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),j=a.useRef(null),Y=E.join("+").replace(/Key/g,"").replace(/Digit/g,""),B=a.useRef(null),$=a.useRef(!1),lt=a.useCallback(i=>{Q(p=>{var m;return(m=p.find(T=>T.id===i.id))!=null&&m.delete||S.dismiss(i.id),p.filter(({id:T})=>T!==i.id)})},[]);return a.useEffect(()=>S.subscribe(i=>{if(i.dismiss){requestAnimationFrame(()=>{Q(p=>p.map(m=>m.id===i.id?{...m,delete:!0}:m))});return}setTimeout(()=>{Wt.flushSync(()=>{Q(p=>{const m=p.findIndex(T=>T.id===i.id);return m!==-1?[...p.slice(0,m),{...p[m],...i},...p.slice(m+1)]:[i,...p]})})})}),[O]),a.useEffect(()=>{if(H!=="system"){y(H);return}if(H==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?y("dark"):y("light")),typeof window>"u")return;const i=window.matchMedia("(prefers-color-scheme: dark)");try{i.addEventListener("change",({matches:p})=>{y(p?"dark":"light")})}catch{i.addListener(({matches:m})=>{try{y(m?"dark":"light")}catch(T){console.error(T)}})}},[H]),a.useEffect(()=>{O.length<=1&&I(!1)},[O]),a.useEffect(()=>{const i=p=>{var m;if(E.every(X=>p[X]||p.code===X)){var T;I(!0),(T=j.current)==null||T.focus()}p.code==="Escape"&&(document.activeElement===j.current||(m=j.current)!=null&&m.contains(document.activeElement))&&I(!1)};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[E]),a.useEffect(()=>{if(j.current)return()=>{B.current&&(B.current.focus({preventScroll:!0}),B.current=null,$.current=!1)}},[j.current]),a.createElement("section",{ref:r,"aria-label":`${gt} ${Y}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},ht.map((i,p)=>{var m;const[T,X]=i.split("-");return P.length?a.createElement("ol",{key:i,dir:rt==="auto"?It():rt,tabIndex:-1,ref:j,className:s,"data-sonner-toaster":!0,"data-sonner-theme":c,"data-y-position":T,"data-x-position":X,style:{"--front-toast-height":`${((m=st[0])==null?void 0:m.height)||0}px`,"--width":`${me}px`,"--gap":`${U}px`,...pt,...ye(_,t)},onBlur:g=>{$.current&&!g.currentTarget.contains(g.relatedTarget)&&($.current=!1,B.current&&(B.current.focus({preventScroll:!0}),B.current=null))},onFocus:g=>{g.target instanceof HTMLElement&&g.target.dataset.dismissible==="false"||$.current||($.current=!0,B.current=g.relatedTarget)},onMouseEnter:()=>I(!0),onMouseMove:()=>I(!0),onMouseLeave:()=>{it||I(!1)},onDragEnd:()=>I(!1),onPointerDown:g=>{g.target instanceof HTMLElement&&g.target.dataset.dismissible==="false"||Z(!0)},onPointerUp:()=>Z(!1)},P.filter(g=>!g.position&&p===0||g.position===i).map((g,dt)=>{var ct,ut;return a.createElement(be,{key:g.id,icons:nt,index:dt,toast:g,defaultRichColors:ot,duration:(ct=l?.duration)!=null?ct:A,className:l?.className,descriptionClassName:l?.descriptionClassName,invert:f,visibleToasts:V,closeButton:(ut=l?.closeButton)!=null?ut:d,interacting:it,position:i,style:l?.style,unstyled:l?.unstyled,classNames:l?.classNames,cancelButtonStyle:l?.cancelButtonStyle,actionButtonStyle:l?.actionButtonStyle,closeButtonAriaLabel:l?.closeButtonAriaLabel,removeToast:lt,toasts:P.filter(W=>W.position==g.position),heights:st.filter(W=>W.position==g.position),setHeights:vt,expandByDefault:b,gap:U,expanded:J,swipeDirections:e.swipeDirections})})):null}))});export{Te as n,Se as t};
1
+ import{r as Ct}from"./rolldown-runtime-CXHxssQy.js";import{ut as Ut}from"./icons-CtpwLWUI.js";import{Ot as Xt}from"./radix-ui-CgJOuzDv.js";var a=Ct(Ut(),1),Wt=Ct(Xt(),1);function qt(o){if(!o||typeof document>"u")return;let e=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",e.appendChild(r),r.styleSheet?r.styleSheet.cssText=o:r.appendChild(document.createTextNode(o))}var Kt=o=>{switch(o){case"success":return Jt;case"info":return te;case"warning":return Zt;case"error":return ee;default:return null}},Gt=Array(12).fill(0),Qt=({visible:o,className:e})=>a.createElement("div",{className:["sonner-loading-wrapper",e].filter(Boolean).join(" "),"data-visible":o},a.createElement("div",{className:"sonner-spinner"},Gt.map((r,u)=>a.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${u}`})))),Jt=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),Zt=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),te=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),ee=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},a.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),ae=a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},a.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),a.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),oe=()=>{const[o,e]=a.useState(document.hidden);return a.useEffect(()=>{const r=()=>{e(document.hidden)};return document.addEventListener("visibilitychange",r),()=>window.removeEventListener("visibilitychange",r)},[]),o},xt=1,re=class{constructor(){this.subscribe=o=>(this.subscribers.push(o),()=>{const e=this.subscribers.indexOf(o);this.subscribers.splice(e,1)}),this.publish=o=>{this.subscribers.forEach(e=>e(o))},this.addToast=o=>{this.publish(o),this.toasts=[...this.toasts,o]},this.create=o=>{var e;const{message:r,...u}=o,f=typeof o?.id=="number"||((e=o.id)==null?void 0:e.length)>0?o.id:xt++,w=this.toasts.find(b=>b.id===f),E=o.dismissible===void 0?!0:o.dismissible;return this.dismissedToasts.has(f)&&this.dismissedToasts.delete(f),w?this.toasts=this.toasts.map(b=>b.id===f?(this.publish({...b,...o,id:f,title:r}),{...b,...o,id:f,dismissible:E,title:r}):b):this.addToast({title:r,...u,dismissible:E,id:f}),f},this.dismiss=o=>(o?(this.dismissedToasts.add(o),requestAnimationFrame(()=>this.subscribers.forEach(e=>e({id:o,dismiss:!0})))):this.toasts.forEach(e=>{this.subscribers.forEach(r=>r({id:e.id,dismiss:!0}))}),o),this.message=(o,e)=>this.create({...e,message:o}),this.error=(o,e)=>this.create({...e,message:o,type:"error"}),this.success=(o,e)=>this.create({...e,type:"success",message:o}),this.info=(o,e)=>this.create({...e,type:"info",message:o}),this.warning=(o,e)=>this.create({...e,type:"warning",message:o}),this.loading=(o,e)=>this.create({...e,type:"loading",message:o}),this.promise=(o,e)=>{if(!e)return;let r;e.loading!==void 0&&(r=this.create({...e,promise:o,type:"loading",message:e.loading,description:typeof e.description!="function"?e.description:void 0}));const u=Promise.resolve(o instanceof Function?o():o);let f=r!==void 0,w;const E=u.then(async d=>{if(w=["resolve",d],a.isValidElement(d))f=!1,this.create({id:r,type:"default",message:d});else if(se(d)&&!d.ok){f=!1;const s=typeof e.error=="function"?await e.error(`HTTP error! status: ${d.status}`):e.error,_=typeof e.description=="function"?await e.description(`HTTP error! status: ${d.status}`):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"error",description:_,...t})}else if(d instanceof Error){f=!1;const s=typeof e.error=="function"?await e.error(d):e.error,_=typeof e.description=="function"?await e.description(d):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"error",description:_,...t})}else if(e.success!==void 0){f=!1;const s=typeof e.success=="function"?await e.success(d):e.success,_=typeof e.description=="function"?await e.description(d):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"success",description:_,...t})}}).catch(async d=>{if(w=["reject",d],e.error!==void 0){f=!1;const s=typeof e.error=="function"?await e.error(d):e.error,_=typeof e.description=="function"?await e.description(d):e.description,t=typeof s=="object"&&!a.isValidElement(s)?s:{message:s};this.create({id:r,type:"error",description:_,...t})}}).finally(()=>{f&&(this.dismiss(r),r=void 0),e.finally==null||e.finally.call(e)}),b=()=>new Promise((d,s)=>E.then(()=>w[0]==="reject"?s(w[1]):d(w[1])).catch(s));return typeof r!="string"&&typeof r!="number"?{unwrap:b}:Object.assign(r,{unwrap:b})},this.custom=(o,e)=>{const r=e?.id||xt++;return this.create({jsx:o(r),id:r,...e}),r},this.getActiveToasts=()=>this.toasts.filter(o=>!this.dismissedToasts.has(o.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},S=new re,ne=(o,e)=>{const r=e?.id||xt++;return S.addToast({title:o,...e,id:r}),r},se=o=>o&&typeof o=="object"&&"ok"in o&&typeof o.ok=="boolean"&&"status"in o&&typeof o.status=="number",ie=ne,le=()=>S.toasts,de=()=>S.getActiveToasts(),Te=Object.assign(ie,{success:S.success,info:S.info,warning:S.warning,error:S.error,custom:S.custom,message:S.message,promise:S.promise,dismiss:S.dismiss,loading:S.loading},{getHistory:le,getToasts:de});qt("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function mt(o){return o.label!==void 0}var ce=3,ue="24px",fe="16px",Mt=4e3,me=356,pe=14,ge=45,he=200;function R(...o){return o.filter(Boolean).join(" ")}function ve(o){const[e,r]=o.split("-"),u=[];return e&&u.push(e),r&&u.push(r),u}var be=o=>{var e,r,u,f,w,E,b,d,s;const{invert:_,toast:t,unstyled:H,interacting:ot,setHeights:A,visibleToasts:pt,heights:V,index:l,toasts:rt,expanded:U,removeToast:nt,defaultRichColors:gt,closeButton:O,style:Q,cancelButtonStyle:P,actionButtonStyle:ht,className:st="",descriptionClassName:vt="",duration:J,position:I,gap:it,expandByDefault:Z,classNames:c,icons:y,closeButtonAriaLabel:j="Close toast"}=o,[Y,B]=a.useState(null),[$,lt]=a.useState(null),[i,p]=a.useState(!1),[m,T]=a.useState(!1),[X,g]=a.useState(!1),[dt,ct]=a.useState(!1),[ut,W]=a.useState(!1),[Rt,bt]=a.useState(0),[At,Et]=a.useState(0),tt=a.useRef(t.duration||J||Mt),Tt=a.useRef(null),z=a.useRef(null),Ot=l===0,zt=l+1<=pt,k=t.type,q=t.dismissible!==!1,Ht=t.className||"",jt=t.descriptionClassName||"",ft=a.useMemo(()=>V.findIndex(n=>n.toastId===t.id)||0,[V,t.id]),Lt=a.useMemo(()=>{var n;return(n=t.closeButton)!=null?n:O},[t.closeButton,O]),St=a.useMemo(()=>t.duration||J||Mt,[t.duration,J]),yt=a.useRef(0),K=a.useRef(0),_t=a.useRef(0),G=a.useRef(null),[Pt,Yt]=I.split("-"),kt=a.useMemo(()=>V.reduce((n,h,x)=>x>=ft?n:n+h.height,0),[V,ft]),Nt=oe(),$t=t.invert||_,wt=k==="loading";K.current=a.useMemo(()=>ft*it+kt,[ft,kt]),a.useEffect(()=>{tt.current=St},[St]),a.useEffect(()=>{p(!0)},[]),a.useEffect(()=>{const n=z.current;if(n){const h=n.getBoundingClientRect().height;return Et(h),A(x=>[{toastId:t.id,height:h,position:t.position},...x]),()=>A(x=>x.filter(N=>N.toastId!==t.id))}},[A,t.id]),a.useLayoutEffect(()=>{if(!i)return;const n=z.current,h=n.style.height;n.style.height="auto";const x=n.getBoundingClientRect().height;n.style.height=h,Et(x),A(N=>N.find(v=>v.toastId===t.id)?N.map(v=>v.toastId===t.id?{...v,height:x}:v):[{toastId:t.id,height:x,position:t.position},...N])},[i,t.title,t.description,A,t.id,t.jsx,t.action,t.cancel]);const L=a.useCallback(()=>{T(!0),bt(K.current),A(n=>n.filter(h=>h.toastId!==t.id)),setTimeout(()=>{nt(t)},he)},[t,nt,A,K]);a.useEffect(()=>{if(t.promise&&k==="loading"||t.duration===1/0||t.type==="loading")return;let n;return U||ot||Nt?(()=>{if(_t.current<yt.current){const N=new Date().getTime()-yt.current;tt.current=tt.current-N}_t.current=new Date().getTime()})():tt.current!==1/0&&(yt.current=new Date().getTime(),n=setTimeout(()=>{t.onAutoClose==null||t.onAutoClose.call(t,t),L()},tt.current)),()=>clearTimeout(n)},[U,ot,t,k,Nt,L]),a.useEffect(()=>{t.delete&&(L(),t.onDismiss==null||t.onDismiss.call(t,t))},[L,t.delete]);function Ft(){var n;if(y?.loading){var h;return a.createElement("div",{className:R(c?.loader,t==null||(h=t.classNames)==null?void 0:h.loader,"sonner-loader"),"data-visible":k==="loading"},y.loading)}return a.createElement(Qt,{className:R(c?.loader,t==null||(n=t.classNames)==null?void 0:n.loader),visible:k==="loading"})}const Vt=t.icon||y?.[k]||Kt(k);var Bt,Dt;return a.createElement("li",{tabIndex:0,ref:z,className:R(st,Ht,c?.toast,t==null||(e=t.classNames)==null?void 0:e.toast,c?.default,c?.[k],t==null||(r=t.classNames)==null?void 0:r[k]),"data-sonner-toast":"","data-rich-colors":(Bt=t.richColors)!=null?Bt:gt,"data-styled":!(t.jsx||t.unstyled||H),"data-mounted":i,"data-promise":!!t.promise,"data-swiped":ut,"data-removed":m,"data-visible":zt,"data-y-position":Pt,"data-x-position":Yt,"data-index":l,"data-front":Ot,"data-swiping":X,"data-dismissible":q,"data-type":k,"data-invert":$t,"data-swipe-out":dt,"data-swipe-direction":$,"data-expanded":!!(U||Z&&i),"data-testid":t.testId,style:{"--index":l,"--toasts-before":l,"--z-index":rt.length-l,"--offset":`${m?Rt:K.current}px`,"--initial-height":Z?"auto":`${At}px`,...Q,...t.style},onDragEnd:()=>{g(!1),B(null),G.current=null},onPointerDown:n=>{n.button!==2&&(wt||!q||(Tt.current=new Date,bt(K.current),n.target.setPointerCapture(n.pointerId),n.target.tagName!=="BUTTON"&&(g(!0),G.current={x:n.clientX,y:n.clientY})))},onPointerUp:()=>{var n,h,x;if(dt||!q)return;G.current=null;const N=Number(((n=z.current)==null?void 0:n.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),v=Number(((h=z.current)==null?void 0:h.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),D=new Date().getTime()-((x=Tt.current)==null?void 0:x.getTime()),et=Y==="x"?N:v,C=Math.abs(et)/D;if(Math.abs(et)>=ge||C>.11){bt(K.current),t.onDismiss==null||t.onDismiss.call(t,t),lt(Y==="x"?N>0?"right":"left":v>0?"down":"up"),L(),ct(!0);return}else{var M,at;(M=z.current)==null||M.style.setProperty("--swipe-amount-x","0px"),(at=z.current)==null||at.style.setProperty("--swipe-amount-y","0px")}W(!1),g(!1),B(null)},onPointerMove:n=>{var h,x,N;if(!G.current||!q||((h=window.getSelection())==null?void 0:h.toString().length)>0)return;const v=n.clientY-G.current.y,D=n.clientX-G.current.x;var et;const C=(et=o.swipeDirections)!=null?et:ve(I);!Y&&(Math.abs(D)>1||Math.abs(v)>1)&&B(Math.abs(D)>Math.abs(v)?"x":"y");let M={x:0,y:0};const at=F=>1/(1.5+Math.abs(F)/20);if(Y==="y"){if(C.includes("top")||C.includes("bottom"))if(C.includes("top")&&v<0||C.includes("bottom")&&v>0)M.y=v;else{const F=v*at(v);M.y=Math.abs(F)<Math.abs(v)?F:v}}else if(Y==="x"&&(C.includes("left")||C.includes("right")))if(C.includes("left")&&D<0||C.includes("right")&&D>0)M.x=D;else{const F=D*at(D);M.x=Math.abs(F)<Math.abs(D)?F:D}(Math.abs(M.x)>0||Math.abs(M.y)>0)&&W(!0),(x=z.current)==null||x.style.setProperty("--swipe-amount-x",`${M.x}px`),(N=z.current)==null||N.style.setProperty("--swipe-amount-y",`${M.y}px`)}},Lt&&!t.jsx&&k!=="loading"?a.createElement("button",{"aria-label":j,"data-disabled":wt,"data-close-button":!0,onClick:wt||!q?()=>{}:()=>{L(),t.onDismiss==null||t.onDismiss.call(t,t)},className:R(c?.closeButton,t==null||(u=t.classNames)==null?void 0:u.closeButton)},(Dt=y?.close)!=null?Dt:ae):null,(k||t.icon||t.promise)&&t.icon!==null&&(y?.[k]!==null||t.icon)?a.createElement("div",{"data-icon":"",className:R(c?.icon,t==null||(f=t.classNames)==null?void 0:f.icon)},t.promise||t.type==="loading"&&!t.icon?t.icon||Ft():null,t.type!=="loading"?Vt:null):null,a.createElement("div",{"data-content":"",className:R(c?.content,t==null||(w=t.classNames)==null?void 0:w.content)},a.createElement("div",{"data-title":"",className:R(c?.title,t==null||(E=t.classNames)==null?void 0:E.title)},t.jsx?t.jsx:typeof t.title=="function"?t.title():t.title),t.description?a.createElement("div",{"data-description":"",className:R(vt,jt,c?.description,t==null||(b=t.classNames)==null?void 0:b.description)},typeof t.description=="function"?t.description():t.description):null),a.isValidElement(t.cancel)?t.cancel:t.cancel&&mt(t.cancel)?a.createElement("button",{"data-button":!0,"data-cancel":!0,style:t.cancelButtonStyle||P,onClick:n=>{mt(t.cancel)&&q&&(t.cancel.onClick==null||t.cancel.onClick.call(t.cancel,n),L())},className:R(c?.cancelButton,t==null||(d=t.classNames)==null?void 0:d.cancelButton)},t.cancel.label):null,a.isValidElement(t.action)?t.action:t.action&&mt(t.action)?a.createElement("button",{"data-button":!0,"data-action":!0,style:t.actionButtonStyle||ht,onClick:n=>{mt(t.action)&&(t.action.onClick==null||t.action.onClick.call(t.action,n),!n.defaultPrevented&&L())},className:R(c?.actionButton,t==null||(s=t.classNames)==null?void 0:s.actionButton)},t.action.label):null)};function It(){if(typeof window>"u"||typeof document>"u")return"ltr";const o=document.documentElement.getAttribute("dir");return o==="auto"||!o?window.getComputedStyle(document.documentElement).direction:o}function ye(o,e){const r={};return[o,e].forEach((u,f)=>{const w=f===1,E=w?"--mobile-offset":"--offset",b=w?fe:ue;function d(s){["top","right","bottom","left"].forEach(_=>{r[`${E}-${_}`]=typeof s=="number"?`${s}px`:s})}typeof u=="number"||typeof u=="string"?d(u):typeof u=="object"?["top","right","bottom","left"].forEach(s=>{u[s]===void 0?r[`${E}-${s}`]=b:r[`${E}-${s}`]=typeof u[s]=="number"?`${u[s]}px`:u[s]}):d(b)}),r}var Se=a.forwardRef(function(e,r){const{id:u,invert:f,position:w="bottom-right",hotkey:E=["altKey","KeyT"],expand:b,closeButton:d,className:s,offset:_,mobileOffset:t,theme:H="light",richColors:ot,duration:A,style:pt,visibleToasts:V=ce,toastOptions:l,dir:rt=It(),gap:U=pe,icons:nt,containerAriaLabel:gt="Notifications"}=e,[O,Q]=a.useState([]),P=a.useMemo(()=>u?O.filter(i=>i.toasterId===u):O.filter(i=>!i.toasterId),[O,u]),ht=a.useMemo(()=>Array.from(new Set([w].concat(P.filter(i=>i.position).map(i=>i.position)))),[P,w]),[st,vt]=a.useState([]),[J,I]=a.useState(!1),[it,Z]=a.useState(!1),[c,y]=a.useState(H!=="system"?H:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),j=a.useRef(null),Y=E.join("+").replace(/Key/g,"").replace(/Digit/g,""),B=a.useRef(null),$=a.useRef(!1),lt=a.useCallback(i=>{Q(p=>{var m;return(m=p.find(T=>T.id===i.id))!=null&&m.delete||S.dismiss(i.id),p.filter(({id:T})=>T!==i.id)})},[]);return a.useEffect(()=>S.subscribe(i=>{if(i.dismiss){requestAnimationFrame(()=>{Q(p=>p.map(m=>m.id===i.id?{...m,delete:!0}:m))});return}setTimeout(()=>{Wt.flushSync(()=>{Q(p=>{const m=p.findIndex(T=>T.id===i.id);return m!==-1?[...p.slice(0,m),{...p[m],...i},...p.slice(m+1)]:[i,...p]})})})}),[O]),a.useEffect(()=>{if(H!=="system"){y(H);return}if(H==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?y("dark"):y("light")),typeof window>"u")return;const i=window.matchMedia("(prefers-color-scheme: dark)");try{i.addEventListener("change",({matches:p})=>{y(p?"dark":"light")})}catch{i.addListener(({matches:m})=>{try{y(m?"dark":"light")}catch(T){console.error(T)}})}},[H]),a.useEffect(()=>{O.length<=1&&I(!1)},[O]),a.useEffect(()=>{const i=p=>{var m;if(E.every(X=>p[X]||p.code===X)){var T;I(!0),(T=j.current)==null||T.focus()}p.code==="Escape"&&(document.activeElement===j.current||(m=j.current)!=null&&m.contains(document.activeElement))&&I(!1)};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[E]),a.useEffect(()=>{if(j.current)return()=>{B.current&&(B.current.focus({preventScroll:!0}),B.current=null,$.current=!1)}},[j.current]),a.createElement("section",{ref:r,"aria-label":`${gt} ${Y}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},ht.map((i,p)=>{var m;const[T,X]=i.split("-");return P.length?a.createElement("ol",{key:i,dir:rt==="auto"?It():rt,tabIndex:-1,ref:j,className:s,"data-sonner-toaster":!0,"data-sonner-theme":c,"data-y-position":T,"data-x-position":X,style:{"--front-toast-height":`${((m=st[0])==null?void 0:m.height)||0}px`,"--width":`${me}px`,"--gap":`${U}px`,...pt,...ye(_,t)},onBlur:g=>{$.current&&!g.currentTarget.contains(g.relatedTarget)&&($.current=!1,B.current&&(B.current.focus({preventScroll:!0}),B.current=null))},onFocus:g=>{g.target instanceof HTMLElement&&g.target.dataset.dismissible==="false"||$.current||($.current=!0,B.current=g.relatedTarget)},onMouseEnter:()=>I(!0),onMouseMove:()=>I(!0),onMouseLeave:()=>{it||I(!1)},onDragEnd:()=>I(!1),onPointerDown:g=>{g.target instanceof HTMLElement&&g.target.dataset.dismissible==="false"||Z(!0)},onPointerUp:()=>Z(!1)},P.filter(g=>!g.position&&p===0||g.position===i).map((g,dt)=>{var ct,ut;return a.createElement(be,{key:g.id,icons:nt,index:dt,toast:g,defaultRichColors:ot,duration:(ct=l?.duration)!=null?ct:A,className:l?.className,descriptionClassName:l?.descriptionClassName,invert:f,visibleToasts:V,closeButton:(ut=l?.closeButton)!=null?ut:d,interacting:it,position:i,style:l?.style,unstyled:l?.unstyled,classNames:l?.classNames,cancelButtonStyle:l?.cancelButtonStyle,actionButtonStyle:l?.actionButtonStyle,closeButtonAriaLabel:l?.closeButtonAriaLabel,removeToast:lt,toasts:P.filter(W=>W.position==g.position),heights:st.filter(W=>W.position==g.position),setHeights:vt,expandByDefault:b,gap:U,expanded:J,swipeDirections:e.swipeDirections})})):null}))});export{Te as n,Se as t};