@hexclave/react 1.0.32 → 1.0.34

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/clickmap/clickmap-core.js +1 -1
  2. package/dist/clickmap/index.js +2 -2
  3. package/dist/components/api-key-dialogs.js +2 -2
  4. package/dist/components/credential-sign-in.js +1 -1
  5. package/dist/components/credential-sign-up.js +1 -1
  6. package/dist/components/magic-link-sign-in.js +1 -1
  7. package/dist/components/team-switcher.js +1 -1
  8. package/dist/components-page/account-settings/active-sessions/active-sessions-page.js +1 -1
  9. package/dist/components-page/account-settings/email-and-auth/emails-section.js +1 -1
  10. package/dist/components-page/account-settings/email-and-auth/mfa-section.js +1 -1
  11. package/dist/components-page/account-settings/email-and-auth/password-section.js +1 -1
  12. package/dist/components-page/account-settings/teams/team-api-keys-section.js +1 -1
  13. package/dist/components-page/account-settings/teams/team-creation-page.js +1 -1
  14. package/dist/components-page/account-settings/teams/team-member-invitation-section.js +1 -1
  15. package/dist/components-page/auth-page.js +1 -1
  16. package/dist/components-page/cli-auth-confirm.js +1 -1
  17. package/dist/components-page/cli-auth-confirm.test.js +1 -1
  18. package/dist/components-page/forgot-password.js +1 -1
  19. package/dist/components-page/oauth-callback.js +2 -2
  20. package/dist/components-page/oauth-callback.test.js +1 -1
  21. package/dist/components-page/onboarding.js +1 -1
  22. package/dist/components-page/password-reset.js +1 -1
  23. package/dist/components-page/team-creation.js +1 -1
  24. package/dist/dev-tool/dev-tool-core.d.ts.map +1 -1
  25. package/dist/dev-tool/dev-tool-core.js +9 -13
  26. package/dist/dev-tool/dev-tool-core.js.map +1 -1
  27. package/dist/dev-tool/index.js +1 -1
  28. package/dist/esm/clickmap/clickmap-core.js +1 -1
  29. package/dist/esm/clickmap/index.js +2 -2
  30. package/dist/esm/components/api-key-dialogs.js +2 -2
  31. package/dist/esm/components/credential-sign-in.js +1 -1
  32. package/dist/esm/components/credential-sign-up.js +1 -1
  33. package/dist/esm/components/magic-link-sign-in.js +1 -1
  34. package/dist/esm/components/team-switcher.js +1 -1
  35. package/dist/esm/components-page/account-settings/active-sessions/active-sessions-page.js +1 -1
  36. package/dist/esm/components-page/account-settings/email-and-auth/emails-section.js +1 -1
  37. package/dist/esm/components-page/account-settings/email-and-auth/mfa-section.js +1 -1
  38. package/dist/esm/components-page/account-settings/email-and-auth/password-section.js +1 -1
  39. package/dist/esm/components-page/account-settings/teams/team-api-keys-section.js +1 -1
  40. package/dist/esm/components-page/account-settings/teams/team-creation-page.js +1 -1
  41. package/dist/esm/components-page/account-settings/teams/team-member-invitation-section.js +1 -1
  42. package/dist/esm/components-page/auth-page.js +1 -1
  43. package/dist/esm/components-page/cli-auth-confirm.js +1 -1
  44. package/dist/esm/components-page/cli-auth-confirm.test.js +1 -1
  45. package/dist/esm/components-page/forgot-password.js +1 -1
  46. package/dist/esm/components-page/oauth-callback.js +2 -2
  47. package/dist/esm/components-page/oauth-callback.test.js +1 -1
  48. package/dist/esm/components-page/onboarding.js +1 -1
  49. package/dist/esm/components-page/password-reset.js +1 -1
  50. package/dist/esm/components-page/team-creation.js +1 -1
  51. package/dist/esm/dev-tool/dev-tool-core.d.ts.map +1 -1
  52. package/dist/esm/dev-tool/dev-tool-core.js +9 -13
  53. package/dist/esm/dev-tool/dev-tool-core.js.map +1 -1
  54. package/dist/esm/dev-tool/index.js +1 -1
  55. package/dist/esm/generated/quetzal-translations.d.ts +2 -2
  56. package/dist/esm/lib/auth.js +1 -1
  57. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts +2 -1
  58. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts.map +1 -1
  59. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.cross-domain.test.js +23 -0
  60. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.cross-domain.test.js.map +1 -1
  61. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.d.ts +5 -0
  62. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.d.ts.map +1 -1
  63. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.js +21 -18
  64. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.js.map +1 -1
  65. package/dist/esm/lib/hexclave-app/apps/implementations/common.js +2 -2
  66. package/dist/esm/lib/hexclave-app/apps/implementations/event-tracker.js +1 -1
  67. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.js +1 -1
  68. package/dist/esm/lib/hexclave-app/apps/implementations/session-replay.js +1 -1
  69. package/dist/esm/lib/hexclave-app/apps/interfaces/client-app.d.ts +1 -0
  70. package/dist/esm/lib/hexclave-app/apps/interfaces/client-app.d.ts.map +1 -1
  71. package/dist/esm/lib/hexclave-app/apps/interfaces/client-app.js.map +1 -1
  72. package/dist/esm/providers/theme-provider.js +1 -1
  73. package/dist/esm/pushed-config-error-overlay/index.js +1 -1
  74. package/dist/generated/quetzal-translations.d.ts +2 -2
  75. package/dist/lib/auth.js +1 -1
  76. package/dist/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts +1 -0
  77. package/dist/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts.map +1 -1
  78. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.cross-domain.test.js +23 -0
  79. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.cross-domain.test.js.map +1 -1
  80. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.d.ts +5 -0
  81. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.d.ts.map +1 -1
  82. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.js +21 -18
  83. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.js.map +1 -1
  84. package/dist/lib/hexclave-app/apps/implementations/common.js +2 -2
  85. package/dist/lib/hexclave-app/apps/implementations/event-tracker.js +1 -1
  86. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.js +1 -1
  87. package/dist/lib/hexclave-app/apps/implementations/session-replay.js +1 -1
  88. package/dist/lib/hexclave-app/apps/interfaces/client-app.d.ts +1 -0
  89. package/dist/lib/hexclave-app/apps/interfaces/client-app.d.ts.map +1 -1
  90. package/dist/lib/hexclave-app/apps/interfaces/client-app.js.map +1 -1
  91. package/dist/providers/theme-provider.js +1 -1
  92. package/dist/pushed-config-error-overlay/index.js +1 -1
  93. package/package.json +3 -3
  94. package/src/dev-tool/dev-tool-core.ts +14 -9
  95. package/src/integrations/convex/component/README.md +2 -4
  96. package/src/lib/hexclave-app/apps/implementations/client-app-impl.cross-domain.test.ts +37 -0
  97. package/src/lib/hexclave-app/apps/implementations/client-app-impl.ts +22 -3
  98. package/src/lib/hexclave-app/apps/interfaces/client-app.ts +1 -0
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_chunk = require('../chunk-BE-pF4vm.js');
3
- let _hexclave_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
4
3
  let _hexclave_shared_dist_utils_promises = require("@hexclave/shared/dist/utils/promises");
5
4
  let ___in_page_ui_dom_js = require("../in-page-ui/dom.js");
5
+ let _hexclave_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
6
6
  let _hexclave_shared_dist_utils_urls = require("@hexclave/shared/dist/utils/urls");
7
7
  let ___generated_env_js = require("../generated/env.js");
8
8
 
@@ -1,9 +1,9 @@
1
- import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
2
1
  import { AnalyticsClickmapResponseBodySchema } from "@hexclave/shared/dist/interface/admin-metrics";
3
2
  import { CLICKMAP_OVERLAY_RESUME_STORAGE_KEY, CLICKMAP_OVERLAY_TOKEN_STORAGE_KEY, CLICKMAP_OVERLAY_TOKEN_UPDATED_EVENT } from "@hexclave/shared/dist/utils/analytics-clickmap-overlay";
4
3
  import { CLICKMAP_ROOT_ID, DEV_TOOL_ROOT_ID } from "@hexclave/shared/dist/utils/dev-tool";
5
4
  import { cssEscapeIdent } from "@hexclave/shared/dist/utils/dom";
6
5
  import { buildElementsChain, parseElementsChain } from "@hexclave/shared/dist/utils/elements-chain";
6
+ import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
7
7
  import { stringCompare } from "@hexclave/shared/dist/utils/strings";
8
8
  import { getGlobalUiInstance, h, hasAppendChild, setGlobalUiInstance, setHtml } from "../in-page-ui/dom.js";
9
9
  import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
@@ -1,7 +1,7 @@
1
- import { captureError } from "@hexclave/shared/dist/utils/errors";
2
- import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
3
1
  import { CLICKMAP_OVERLAY_RESUME_STORAGE_KEY, CLICKMAP_OVERLAY_TOKEN_UPDATED_EVENT } from "@hexclave/shared/dist/utils/analytics-clickmap-overlay";
2
+ import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
4
3
  import { canMountIntoDom } from "../in-page-ui/dom.js";
4
+ import { captureError } from "@hexclave/shared/dist/utils/errors";
5
5
 
6
6
  //#region src/clickmap/index.ts
7
7
  function consumeResumeSentinel() {
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
4
+ import { captureError } from "@hexclave/shared/dist/utils/errors";
3
5
  import { yupResolver } from "@hookform/resolvers/yup";
4
6
  import { yupObject, yupString } from "@hexclave/shared/dist/schema-fields";
5
- import { captureError } from "@hexclave/shared/dist/utils/errors";
6
- import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
7
7
  import { ActionDialog, Button, CopyField, Input, Label, Typography } from "@hexclave/ui";
8
8
  import { useState } from "react";
9
9
  import { useForm } from "react-hook-form";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { passwordSchema, strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Input, Label, PasswordInput } from "@hexclave/ui";
7
7
  import { useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { passwordSchema, strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Input, Label, PasswordInput } from "@hexclave/ui";
7
7
  import React, { useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Input, InputOTP, InputOTPGroup, InputOTPSlot, Label, Typography } from "@hexclave/ui";
7
7
  import { useEffect, useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
- import { HexclaveAssertionError } from "@hexclave/shared/dist/utils/errors";
4
3
  import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
4
+ import { HexclaveAssertionError } from "@hexclave/shared/dist/utils/errors";
5
5
  import { Button, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, Skeleton, Typography, cn } from "@hexclave/ui";
6
6
  import { Suspense, useMemo } from "react";
7
7
  import { useStackApp, useUser } from "../index.js";
@@ -1,5 +1,5 @@
1
- import { captureError } from "@hexclave/shared/dist/utils/errors";
2
1
  import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
2
+ import { captureError } from "@hexclave/shared/dist/utils/errors";
3
3
  import { ActionCell, Badge, Button, Skeleton, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Typography } from "@hexclave/ui";
4
4
  import { useEffect, useState } from "react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
+ import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
1
2
  import { yupResolver } from "@hookform/resolvers/yup";
2
3
  import { strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
3
- import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
4
4
  import { ActionCell, Badge, Button, Input, Table, TableBody, TableCell, TableRow, Typography } from "@hexclave/ui";
5
5
  import { useEffect, useState } from "react";
6
6
  import { useForm } from "react-hook-form";
@@ -1,5 +1,5 @@
1
- import { throwErr } from "@hexclave/shared/dist/utils/errors";
2
1
  import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
2
+ import { throwErr } from "@hexclave/shared/dist/utils/errors";
3
3
  import { Button, Input, Typography } from "@hexclave/ui";
4
4
  import { useEffect, useState } from "react";
5
5
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
+ import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
1
2
  import { yupResolver } from "@hookform/resolvers/yup";
2
3
  import { passwordSchema, yupObject, yupString } from "@hexclave/shared/dist/schema-fields";
3
- import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
4
4
  import { Button, Input, Label, PasswordInput, Typography } from "@hexclave/ui";
5
5
  import { useState } from "react";
6
6
  import { useForm } from "react-hook-form";
@@ -4,9 +4,9 @@ import { useState } from "react";
4
4
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
5
  import { useStackApp, useUser } from "../../../lib/hooks.js";
6
6
  import { useTranslation } from "../../../lib/translations.js";
7
- import { Section } from "../section.js";
8
7
  import { CreateApiKeyDialog, ShowApiKeyDialog } from "../../../components/api-key-dialogs.js";
9
8
  import { ApiKeyTable } from "../../../components/api-key-table.js";
9
+ import { Section } from "../section.js";
10
10
 
11
11
  //#region src/components-page/account-settings/teams/team-api-keys-section.tsx
12
12
  function TeamApiKeysSection(props) {
@@ -1,6 +1,6 @@
1
+ import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
1
2
  import { yupResolver } from "@hookform/resolvers/yup";
2
3
  import { yupObject, yupString } from "@hexclave/shared/dist/schema-fields";
3
- import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
4
4
  import { Button, Input } from "@hexclave/ui";
5
5
  import { useState } from "react";
6
6
  import { useForm } from "react-hook-form";
@@ -1,6 +1,6 @@
1
+ import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
1
2
  import { yupResolver } from "@hookform/resolvers/yup";
2
3
  import { strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
3
- import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
4
4
  import { Button, Input, Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Typography } from "@hexclave/ui";
5
5
  import { useEffect, useState } from "react";
6
6
  import { useForm } from "react-hook-form";
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
- import { captureError } from "@hexclave/shared/dist/utils/errors";
4
3
  import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
4
+ import { captureError } from "@hexclave/shared/dist/utils/errors";
5
5
  import { Skeleton, Tabs, TabsContent, TabsList, TabsTrigger, Typography, cn } from "@hexclave/ui";
6
6
  import { Suspense, useMemo } from "react";
7
7
  import { useStackApp, useUser } from "../index.js";
@@ -1,12 +1,12 @@
1
1
  'use client';
2
2
 
3
3
  import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
4
+ import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
4
5
  import { Typography } from "@hexclave/ui";
5
6
  import { useCallback, useEffect, useRef, useState } from "react";
6
7
  import { useTranslation } from "../lib/translations.js";
7
8
  import { jsx, jsxs } from "react/jsx-runtime";
8
9
  import { useStackApp } from "../lib/hooks.js";
9
- import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
10
10
  import { MessageCard } from "../components/message-cards/message-card.js";
11
11
 
12
12
  //#region src/components-page/cli-auth-confirm.tsx
@@ -1,7 +1,7 @@
1
1
  import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
2
+ import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
2
3
  import React, { act } from "react";
3
4
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
- import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
5
5
  import { createRoot } from "react-dom/client";
6
6
  import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
7
7
  import { HexclaveContext } from "../providers/hexclave-context.js";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Input, Label, Typography, cn } from "@hexclave/ui";
7
7
  import { useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1,14 +1,14 @@
1
1
  'use client';
2
2
 
3
- import { captureError } from "@hexclave/shared/dist/utils/errors";
4
3
  import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
4
+ import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
5
+ import { captureError } from "@hexclave/shared/dist/utils/errors";
5
6
  import { Spinner, cn } from "@hexclave/ui";
6
7
  import { useEffect, useRef, useState } from "react";
7
8
  import { useStackApp } from "../index.js";
8
9
  import { useTranslation } from "../lib/translations.js";
9
10
  import { jsx, jsxs } from "react/jsx-runtime";
10
11
  import { KnownError } from "@hexclave/shared";
11
- import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
12
12
  import { MaybeFullPage } from "../components/elements/maybe-full-page.js";
13
13
  import { StyledLink } from "../components/link.js";
14
14
  import { ErrorPage } from "./error-page.js";
@@ -1,7 +1,7 @@
1
+ import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
1
2
  import React, { act } from "react";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  import { KnownErrors } from "@hexclave/shared";
4
- import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
5
5
  import { createRoot } from "react-dom/client";
6
6
  import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
7
7
  import { OAuthCallback } from "./oauth-callback.js";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { strictEmailSchema, yupObject } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Input, Typography } from "@hexclave/ui";
7
7
  import { useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { passwordSchema, yupObject, yupString } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Label, PasswordInput, Typography, cn } from "@hexclave/ui";
7
7
  import { useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
+ import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
3
4
  import { yupResolver } from "@hookform/resolvers/yup";
4
5
  import { yupObject, yupString } from "@hexclave/shared/dist/schema-fields";
5
- import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
6
6
  import { Button, Input, Label, Typography } from "@hexclave/ui";
7
7
  import { useState } from "react";
8
8
  import { useForm } from "react-hook-form";
@@ -1 +1 @@
1
- {"version":3,"file":"dev-tool-core.d.ts","names":[],"sources":["../../../src/dev-tool/dev-tool-core.ts"],"mappings":";;;iBA4tEgB,aAAA,CAAc,GAAA,EAAK,cAAA"}
1
+ {"version":3,"file":"dev-tool-core.d.ts","names":[],"sources":["../../../src/dev-tool/dev-tool-core.ts"],"mappings":";;;iBAiuEgB,aAAA,CAAc,GAAA,EAAK,cAAA"}
@@ -1,5 +1,5 @@
1
- import { runAsynchronously } from "@hexclave/shared/dist/utils/promises";
2
1
  import { DEV_TOOL_ROOT_ID } from "@hexclave/shared/dist/utils/dev-tool";
2
+ import { runAsynchronously, runAsynchronouslyWithAlert } from "@hexclave/shared/dist/utils/promises";
3
3
  import { getGlobalUiInstance, h, hasAppendChild, setGlobalUiInstance, setHtml } from "../in-page-ui/dom.js";
4
4
  import { hexclaveAppInternalsSymbol } from "../lib/hexclave-app/common.js";
5
5
  import { isLocalhost } from "@hexclave/shared/dist/utils/urls";
@@ -1692,10 +1692,6 @@ function createComponentsTab(app) {
1692
1692
  };
1693
1693
  });
1694
1694
  }
1695
- function getCompactUrl(url) {
1696
- const resolved = new URL(url, window.location.origin);
1697
- return `${resolved.pathname}${resolved.search}${resolved.hash}`;
1698
- }
1699
1695
  const sidebar = h("div", { className: "sdt-pg-sidebar" });
1700
1696
  const mainArea = h("div", { className: "sdt-pg-main" });
1701
1697
  function renderSidebar() {
@@ -1733,12 +1729,6 @@ function createComponentsTab(app) {
1733
1729
  const header = h("div", { className: "sdt-pg-header" });
1734
1730
  const headerTop = h("div", { className: "sdt-pg-header-top" });
1735
1731
  headerTop.appendChild(h("h3", { className: "sdt-pg-title" }, `${page.label} Page`));
1736
- headerTop.appendChild(h("a", {
1737
- href: page.url,
1738
- target: "_blank",
1739
- rel: "noopener noreferrer",
1740
- className: "sdt-pg-title-url"
1741
- }, getCompactUrl(page.url)));
1742
1732
  if (page.versionStatus === "outdated") headerTop.appendChild(h("span", { className: "sdt-pg-badge sdt-pg-badge-outdated" }, "Outdated"));
1743
1733
  header.appendChild(headerTop);
1744
1734
  const redirectMethod = `hexclaveApp.redirectTo${page.key.charAt(0).toUpperCase()}${page.key.slice(1)}()`;
@@ -1747,8 +1737,14 @@ function createComponentsTab(app) {
1747
1737
  const openBtn = h("button", { className: "sdt-pg-copy-btn sdt-pg-open-btn" });
1748
1738
  setHtml(openBtn, "Open <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.25\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M7 17L17 7\"/><path d=\"M7 7h10v10\"/></svg>");
1749
1739
  openBtn.addEventListener("click", () => {
1750
- const resolved = new URL(page.url, window.location.origin);
1751
- window.open(resolved.toString(), "_blank", "noopener,noreferrer");
1740
+ const openedWindow = window.open("about:blank", "_blank");
1741
+ if (openedWindow != null) openedWindow.opener = null;
1742
+ runAsynchronouslyWithAlert(async () => {
1743
+ const redirectUrl = await app[hexclaveAppInternalsSymbol].getRedirectToHandlerUrl(page.key);
1744
+ const resolved = new URL(redirectUrl, window.location.origin);
1745
+ if (openedWindow != null) openedWindow.location.replace(resolved.toString());
1746
+ else window.open(resolved.toString(), "_blank", "noopener,noreferrer");
1747
+ });
1752
1748
  });
1753
1749
  codeRow.appendChild(openBtn);
1754
1750
  header.appendChild(codeRow);