strapi-plugin-hubspot 0.6.0 → 0.6.1

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.1 — 2026-08-28
4
+
5
+ ### Fixed
6
+ - **Admin crash on the HubSpot Forms page** ("Error" with no message, from a
7
+ react-router invariant): `react-router-dom` was missing from
8
+ `peerDependencies`, so 0.6.0 shipped its own inlined copy — a second Router
9
+ context the plugin's `<Routes>` could not reach. It is now externalized to
10
+ the host admin's copy, like every other shared library.
11
+ - A `check-externals` step now runs on every build and fails when a
12
+ must-be-external library gets inlined, so this class of bug can't ship again.
13
+
3
14
  ## 0.6.0 — 2026-08-28
4
15
 
5
16
  The plugin becomes **the form builder for HubSpot**.
@@ -1,12 +1,12 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useParams, useSearchParams, Link, useNavigate, Routes, Route } from "react-router-dom";
2
3
  import * as React from "react";
3
- import { u as useIntl, o as objectLabel } from "./objectLabels-D9UEuOGr.mjs";
4
- import { u as useParams, a as useSearchParams, L as Link, b as useNavigate, R as Routes, c as Route } from "./index-C1UJXE_o.mjs";
4
+ import { u as useIntl, o as objectLabel } from "./objectLabels-C9ocOgVY.mjs";
5
5
  import { Typography, Flex, Box, SingleSelect, SingleSelectOption, TextInput, IconButton, Button, Field, Checkbox, Divider, Combobox, ComboboxOption, Loader, Badge, Textarea, Table, Thead, Tr, Th, Tbody, Td } from "@strapi/design-system";
6
6
  import { Trash, Plus, ArrowClockwise, ArrowLeft, ArrowUp, ArrowDown } from "@strapi/icons";
7
7
  import { useFetchClient } from "@strapi/strapi/admin";
8
- import { g as getTranslation, P as PLUGIN_ID } from "./index-DkGOTp8p.mjs";
9
- import { u as useHubspotSchema } from "./useHubspotSchema-DQkQcA_V.mjs";
8
+ import { g as getTranslation, P as PLUGIN_ID } from "./index-foVSGFWb.mjs";
9
+ import { u as useHubspotSchema } from "./useHubspotSchema-Du3rLY_O.mjs";
10
10
  const OPERATORS = ["eq", "neq", "contains", "empty", "notEmpty", "gt", "lt"];
11
11
  const NEEDS_VALUE = /* @__PURE__ */ new Set(["eq", "neq", "contains", "gt", "lt"]);
12
12
  const ConditionEditor = ({ condition, candidates, onChange }) => {
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
+ const reactRouterDom = require("react-router-dom");
4
5
  const React = require("react");
5
- const objectLabels = require("./objectLabels-Th7aYW-B.js");
6
- const index$1 = require("./index-Dgbid2LK.js");
6
+ const objectLabels = require("./objectLabels-VTt_-qTZ.js");
7
7
  const designSystem = require("@strapi/design-system");
8
8
  const icons = require("@strapi/icons");
9
9
  const admin = require("@strapi/strapi/admin");
10
- const index = require("./index-CMzg-x5i.js");
11
- const useHubspotSchema = require("./useHubspotSchema-Bgrgg8Mt.js");
10
+ const index = require("./index-D_CPrIHe.js");
11
+ const useHubspotSchema = require("./useHubspotSchema-B8SctALV.js");
12
12
  function _interopNamespace(e) {
13
13
  if (e && e.__esModule) return e;
14
14
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -375,8 +375,8 @@ const newStep = () => ({ id: makeId("stp"), title: "", fields: [] });
375
375
  const FormEditor = () => {
376
376
  const { formatMessage } = objectLabels.useIntl();
377
377
  const { get, post, put } = admin.useFetchClient();
378
- const { documentId } = index$1.useParams();
379
- const [searchParams, setSearchParams] = index$1.useSearchParams();
378
+ const { documentId } = reactRouterDom.useParams();
379
+ const [searchParams, setSearchParams] = reactRouterDom.useSearchParams();
380
380
  const locale = searchParams.get("locale") ?? void 0;
381
381
  const [entry, setEntry] = React__namespace.useState(null);
382
382
  const [published, setPublished] = React__namespace.useState(false);
@@ -544,7 +544,7 @@ const FormEditor = () => {
544
544
  return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Box, { padding: 6, children: [
545
545
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { justifyContent: "space-between", alignItems: "center", paddingBottom: 4, children: [
546
546
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 3, alignItems: "center", children: [
547
- /* @__PURE__ */ jsxRuntime.jsx(index$1.Link, { to: `/plugins/${index.PLUGIN_ID}`, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.IconButton, { label: t("editor.back", "Back to the list"), tag: "span", children: /* @__PURE__ */ jsxRuntime.jsx(icons.ArrowLeft, {}) }) }),
547
+ /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Link, { to: `/plugins/${index.PLUGIN_ID}`, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.IconButton, { label: t("editor.back", "Back to the list"), tag: "span", children: /* @__PURE__ */ jsxRuntime.jsx(icons.ArrowLeft, {}) }) }),
548
548
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Box, { children: [
549
549
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 2, alignItems: "center", children: [
550
550
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "beta", tag: "h1", children: entry.name }),
@@ -850,7 +850,7 @@ const FormEditor = () => {
850
850
  const FormsList = () => {
851
851
  const { formatMessage } = objectLabels.useIntl();
852
852
  const { get, post, del } = admin.useFetchClient();
853
- const navigate = index$1.useNavigate();
853
+ const navigate = reactRouterDom.useNavigate();
854
854
  const [rows, setRows] = React__namespace.useState(null);
855
855
  const [name, setName] = React__namespace.useState("");
856
856
  const [busy, setBusy] = React__namespace.useState(false);
@@ -1000,8 +1000,8 @@ const FormsList = () => {
1000
1000
  ] })
1001
1001
  ] });
1002
1002
  };
1003
- const Forms = () => /* @__PURE__ */ jsxRuntime.jsxs(index$1.Routes, { children: [
1004
- /* @__PURE__ */ jsxRuntime.jsx(index$1.Route, { index: true, element: /* @__PURE__ */ jsxRuntime.jsx(FormsList, {}) }),
1005
- /* @__PURE__ */ jsxRuntime.jsx(index$1.Route, { path: ":documentId", element: /* @__PURE__ */ jsxRuntime.jsx(FormEditor, {}) })
1003
+ const Forms = () => /* @__PURE__ */ jsxRuntime.jsxs(reactRouterDom.Routes, { children: [
1004
+ /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Route, { index: true, element: /* @__PURE__ */ jsxRuntime.jsx(FormsList, {}) }),
1005
+ /* @__PURE__ */ jsxRuntime.jsx(reactRouterDom.Route, { path: ":documentId", element: /* @__PURE__ */ jsxRuntime.jsx(FormEditor, {}) })
1006
1006
  ] });
1007
1007
  exports.default = Forms;
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const React = require("react");
5
- const objectLabels = require("./objectLabels-Th7aYW-B.js");
5
+ const objectLabels = require("./objectLabels-VTt_-qTZ.js");
6
6
  const designSystem = require("@strapi/design-system");
7
- const index = require("./index-CMzg-x5i.js");
8
- const useHubspotSchema = require("./useHubspotSchema-Bgrgg8Mt.js");
7
+ const index = require("./index-D_CPrIHe.js");
8
+ const useHubspotSchema = require("./useHubspotSchema-B8SctALV.js");
9
9
  function _interopNamespace(e) {
10
10
  if (e && e.__esModule) return e;
11
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -1,9 +1,9 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
- import { u as useIntl, o as objectLabel } from "./objectLabels-D9UEuOGr.mjs";
3
+ import { u as useIntl, o as objectLabel } from "./objectLabels-C9ocOgVY.mjs";
4
4
  import { Field, Flex, Loader, SingleSelect, SingleSelectOption } from "@strapi/design-system";
5
- import { g as getTranslation } from "./index-DkGOTp8p.mjs";
6
- import { u as useHubspotSchema } from "./useHubspotSchema-DQkQcA_V.mjs";
5
+ import { g as getTranslation } from "./index-foVSGFWb.mjs";
6
+ import { u as useHubspotSchema } from "./useHubspotSchema-Du3rLY_O.mjs";
7
7
  const HubspotObjectInput = React.forwardRef(
8
8
  ({ name, value, onChange, disabled, error, required, label, hint, labelAction }, ref) => {
9
9
  const intl = useIntl();
@@ -2,12 +2,12 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const React = require("react");
5
- const objectLabels = require("./objectLabels-Th7aYW-B.js");
5
+ const objectLabels = require("./objectLabels-VTt_-qTZ.js");
6
6
  const designSystem = require("@strapi/design-system");
7
7
  const icons = require("@strapi/icons");
8
8
  const admin = require("@strapi/strapi/admin");
9
- const index = require("./index-CMzg-x5i.js");
10
- const useHubspotSchema = require("./useHubspotSchema-Bgrgg8Mt.js");
9
+ const index = require("./index-D_CPrIHe.js");
10
+ const useHubspotSchema = require("./useHubspotSchema-B8SctALV.js");
11
11
  function _interopNamespace(e) {
12
12
  if (e && e.__esModule) return e;
13
13
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -1,11 +1,11 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
- import { u as useIntl, o as objectLabel } from "./objectLabels-D9UEuOGr.mjs";
3
+ import { u as useIntl, o as objectLabel } from "./objectLabels-C9ocOgVY.mjs";
4
4
  import { Field, Flex, Loader, Combobox, ComboboxOption, IconButton, Button, Typography, Link } from "@strapi/design-system";
5
5
  import { ArrowClockwise } from "@strapi/icons";
6
6
  import { useField } from "@strapi/strapi/admin";
7
- import { g as getTranslation } from "./index-DkGOTp8p.mjs";
8
- import { u as useHubspotSchema } from "./useHubspotSchema-DQkQcA_V.mjs";
7
+ import { g as getTranslation } from "./index-foVSGFWb.mjs";
8
+ import { u as useHubspotSchema } from "./useHubspotSchema-Du3rLY_O.mjs";
9
9
  const oneLine = {
10
10
  display: "block",
11
11
  whiteSpace: "nowrap",
@@ -1,10 +1,10 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
- import { u as useIntl, o as objectLabel } from "./objectLabels-D9UEuOGr.mjs";
3
+ import { u as useIntl, o as objectLabel } from "./objectLabels-C9ocOgVY.mjs";
4
4
  import { Flex, Divider, Typography, Button, Box, Link, Badge, Loader, Field } from "@strapi/design-system";
5
5
  import { useFetchClient } from "@strapi/strapi/admin";
6
- import { g as getTranslation, P as PLUGIN_ID } from "./index-DkGOTp8p.mjs";
7
- import { L as Link$1 } from "./index-C1UJXE_o.mjs";
6
+ import { g as getTranslation, P as PLUGIN_ID } from "./index-foVSGFWb.mjs";
7
+ import { Link as Link$1 } from "react-router-dom";
8
8
  const AuditSection = ({ configured }) => {
9
9
  const intl = useIntl();
10
10
  const { formatMessage } = intl;
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const React = require("react");
5
- const objectLabels = require("./objectLabels-Th7aYW-B.js");
5
+ const objectLabels = require("./objectLabels-VTt_-qTZ.js");
6
6
  const designSystem = require("@strapi/design-system");
7
7
  const admin = require("@strapi/strapi/admin");
8
- const index$1 = require("./index-CMzg-x5i.js");
9
- const index = require("./index-Dgbid2LK.js");
8
+ const index = require("./index-D_CPrIHe.js");
9
+ const reactRouterDom = require("react-router-dom");
10
10
  function _interopNamespace(e) {
11
11
  if (e && e.__esModule) return e;
12
12
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -32,7 +32,7 @@ const AuditSection = ({ configured }) => {
32
32
  const [busy, setBusy] = React__namespace.useState(false);
33
33
  const [error, setError] = React__namespace.useState(false);
34
34
  const [result, setResult] = React__namespace.useState(null);
35
- const t = (id, defaultMessage, values) => formatMessage({ id: index$1.getTranslation(id), defaultMessage }, values);
35
+ const t = (id, defaultMessage, values) => formatMessage({ id: index.getTranslation(id), defaultMessage }, values);
36
36
  const problemText = (p) => {
37
37
  switch (p.code) {
38
38
  case "unknown":
@@ -62,7 +62,7 @@ const AuditSection = ({ configured }) => {
62
62
  setError(false);
63
63
  setResult(null);
64
64
  try {
65
- const { data } = await get(`/${index$1.PLUGIN_ID}/audit`);
65
+ const { data } = await get(`/${index.PLUGIN_ID}/audit`);
66
66
  setResult(data);
67
67
  } catch {
68
68
  setError(true);
@@ -106,7 +106,7 @@ const AuditSection = ({ configured }) => {
106
106
  hasRadius: true,
107
107
  children: [
108
108
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 2, alignItems: "center", children: [
109
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Link, { tag: index.Link, to: entryLink(report.uid, entry), children: entry.label }),
109
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Link, { tag: reactRouterDom.Link, to: entryLink(report.uid, entry), children: entry.label }),
110
110
  entry.locale ? /* @__PURE__ */ jsxRuntime.jsx(designSystem.Badge, { children: entry.locale }) : null
111
111
  ] }),
112
112
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingTop: 1, children: entry.problems.map((p, i) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "pi", textColor: "danger600", tag: "p", children: problemText(p) }, i)) })
@@ -126,10 +126,10 @@ const FailuresSection = ({ configured }) => {
126
126
  const [feedback, setFeedback] = React__namespace.useState(
127
127
  null
128
128
  );
129
- const t = (id, defaultMessage, values) => formatMessage({ id: index$1.getTranslation(id), defaultMessage }, values);
129
+ const t = (id, defaultMessage, values) => formatMessage({ id: index.getTranslation(id), defaultMessage }, values);
130
130
  const load = React__namespace.useCallback(async () => {
131
131
  try {
132
- const { data } = await get(`/${index$1.PLUGIN_ID}/failures`);
132
+ const { data } = await get(`/${index.PLUGIN_ID}/failures`);
133
133
  setTotal(data.total);
134
134
  } catch {
135
135
  setTotal(null);
@@ -143,7 +143,7 @@ const FailuresSection = ({ configured }) => {
143
143
  setFeedback(null);
144
144
  try {
145
145
  const { data } = await post(
146
- `/${index$1.PLUGIN_ID}/failures/retry`
146
+ `/${index.PLUGIN_ID}/failures/retry`
147
147
  );
148
148
  setFeedback({
149
149
  tone: data.failed ? "danger" : "success",
@@ -200,9 +200,9 @@ const HubspotSettings = () => {
200
200
  const [feedback, setFeedback] = React__namespace.useState(
201
201
  null
202
202
  );
203
- const t = (id, defaultMessage, values) => formatMessage({ id: index$1.getTranslation(id), defaultMessage }, values);
203
+ const t = (id, defaultMessage, values) => formatMessage({ id: index.getTranslation(id), defaultMessage }, values);
204
204
  const load = React__namespace.useCallback(async () => {
205
- const { data } = await get(`/${index$1.PLUGIN_ID}/settings`);
205
+ const { data } = await get(`/${index.PLUGIN_ID}/settings`);
206
206
  setSettings(data);
207
207
  }, [get]);
208
208
  React__namespace.useEffect(() => {
@@ -214,7 +214,7 @@ const HubspotSettings = () => {
214
214
  setBusy(true);
215
215
  setFeedback(null);
216
216
  try {
217
- const { data } = await put(`/${index$1.PLUGIN_ID}/settings`, { apiKey });
217
+ const { data } = await put(`/${index.PLUGIN_ID}/settings`, { apiKey });
218
218
  setSettings(data);
219
219
  setApiKey("");
220
220
  setFeedback({ tone: "success", text: t("settings.saved", "Key saved.") });
@@ -228,7 +228,7 @@ const HubspotSettings = () => {
228
228
  setBusy(true);
229
229
  setFeedback(null);
230
230
  try {
231
- const { data } = await del(`/${index$1.PLUGIN_ID}/settings`);
231
+ const { data } = await del(`/${index.PLUGIN_ID}/settings`);
232
232
  setSettings(data);
233
233
  setApiKey("");
234
234
  setFeedback({ tone: "success", text: t("settings.removed", "Key removed.") });
@@ -243,7 +243,7 @@ const HubspotSettings = () => {
243
243
  setFeedback(null);
244
244
  try {
245
245
  const { data } = await get(
246
- `/${index$1.PLUGIN_ID}/properties?refresh=1`
246
+ `/${index.PLUGIN_ID}/properties?refresh=1`
247
247
  );
248
248
  setFeedback(
249
249
  data.configured ? {
@@ -26,7 +26,7 @@ const index = {
26
26
  icon: icons.PaperPlane,
27
27
  intlLabel: { id: `${PLUGIN_ID}.menu.label`, defaultMessage: "HubSpot Forms" },
28
28
  permissions: [{ action: `plugin::${PLUGIN_ID}.forms`, subject: null }],
29
- Component: async () => (await Promise.resolve().then(() => require("./Forms-BF4_zA-m.js"))).default
29
+ Component: async () => (await Promise.resolve().then(() => require("./Forms-CaT0YEJo.js"))).default
30
30
  });
31
31
  app.customFields.register({
32
32
  name: "property",
@@ -41,7 +41,7 @@ const index = {
41
41
  defaultMessage: "Picked from the portal's real properties"
42
42
  },
43
43
  components: {
44
- Input: async () => Promise.resolve().then(() => require("./HubspotPropertyInput-OSeIBaRC.js"))
44
+ Input: async () => Promise.resolve().then(() => require("./HubspotPropertyInput-SnJMFsII.js"))
45
45
  },
46
46
  // Exposed in the Content-Type Builder. Without this, `objectField` could
47
47
  // only be set by hand-editing schema.json — which is not how anyone
@@ -104,7 +104,7 @@ const index = {
104
104
  defaultMessage: "Picked from the portal's configured objects"
105
105
  },
106
106
  components: {
107
- Input: async () => Promise.resolve().then(() => require("./HubspotObjectInput-hjAYWtaU.js"))
107
+ Input: async () => Promise.resolve().then(() => require("./HubspotObjectInput-Crpcpa8T.js"))
108
108
  }
109
109
  });
110
110
  app.createSettingSection(
@@ -120,7 +120,7 @@ const index = {
120
120
  // Mirrors the RBAC action registered server-side: a role without it
121
121
  // doesn't see the link at all — the routes refuse it anyway.
122
122
  permissions: [{ action: `plugin::${PLUGIN_ID}.settings`, subject: null }],
123
- Component: async () => (await Promise.resolve().then(() => require("./Settings-DcA9M5Tw.js"))).default
123
+ Component: async () => (await Promise.resolve().then(() => require("./Settings-BPAAD-QW.js"))).default
124
124
  }
125
125
  ]
126
126
  );
@@ -25,7 +25,7 @@ const index = {
25
25
  icon: PaperPlane,
26
26
  intlLabel: { id: `${PLUGIN_ID}.menu.label`, defaultMessage: "HubSpot Forms" },
27
27
  permissions: [{ action: `plugin::${PLUGIN_ID}.forms`, subject: null }],
28
- Component: async () => (await import("./Forms-CW1KFO9U.mjs")).default
28
+ Component: async () => (await import("./Forms-B2y_0-x4.mjs")).default
29
29
  });
30
30
  app.customFields.register({
31
31
  name: "property",
@@ -40,7 +40,7 @@ const index = {
40
40
  defaultMessage: "Picked from the portal's real properties"
41
41
  },
42
42
  components: {
43
- Input: async () => import("./HubspotPropertyInput-C-52Lu24.mjs")
43
+ Input: async () => import("./HubspotPropertyInput-k7wMSmeF.mjs")
44
44
  },
45
45
  // Exposed in the Content-Type Builder. Without this, `objectField` could
46
46
  // only be set by hand-editing schema.json — which is not how anyone
@@ -103,7 +103,7 @@ const index = {
103
103
  defaultMessage: "Picked from the portal's configured objects"
104
104
  },
105
105
  components: {
106
- Input: async () => import("./HubspotObjectInput-CpxeM2J0.mjs")
106
+ Input: async () => import("./HubspotObjectInput-DdLAUh0N.mjs")
107
107
  }
108
108
  });
109
109
  app.createSettingSection(
@@ -119,7 +119,7 @@ const index = {
119
119
  // Mirrors the RBAC action registered server-side: a role without it
120
120
  // doesn't see the link at all — the routes refuse it anyway.
121
121
  permissions: [{ action: `plugin::${PLUGIN_ID}.settings`, subject: null }],
122
- Component: async () => (await import("./Settings-2V7TH5CX.mjs")).default
122
+ Component: async () => (await import("./Settings-BMOmj4NJ.mjs")).default
123
123
  }
124
124
  ]
125
125
  );
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { g as getTranslation } from "./index-DkGOTp8p.mjs";
2
+ import { g as getTranslation } from "./index-foVSGFWb.mjs";
3
3
  var __assign = function() {
4
4
  __assign = Object.assign || function __assign2(t) {
5
5
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  const React = require("react");
3
- const index = require("./index-CMzg-x5i.js");
3
+ const index = require("./index-D_CPrIHe.js");
4
4
  function _interopNamespace(e) {
5
5
  if (e && e.__esModule) return e;
6
6
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const React = require("react");
3
3
  const admin = require("@strapi/strapi/admin");
4
- const index = require("./index-CMzg-x5i.js");
4
+ const index = require("./index-D_CPrIHe.js");
5
5
  function _interopNamespace(e) {
6
6
  if (e && e.__esModule) return e;
7
7
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import { useFetchClient } from "@strapi/strapi/admin";
3
- import { P as PLUGIN_ID } from "./index-DkGOTp8p.mjs";
3
+ import { P as PLUGIN_ID } from "./index-foVSGFWb.mjs";
4
4
  let cached = null;
5
5
  let inFlight = null;
6
6
  const listeners = /* @__PURE__ */ new Set();
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
- const index = require("../_chunks/index-CMzg-x5i.js");
2
+ const index = require("../_chunks/index-D_CPrIHe.js");
3
3
  require("@strapi/icons");
4
4
  module.exports = index.index;
@@ -1,4 +1,4 @@
1
- import { i } from "../_chunks/index-DkGOTp8p.mjs";
1
+ import { i } from "../_chunks/index-foVSGFWb.mjs";
2
2
  import "@strapi/icons";
3
3
  export {
4
4
  i as default
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "strapi-plugin-hubspot",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "The form builder for HubSpot in Strapi — multi-step forms with conditional fields mapped to real CRM properties, a public submit pipeline with retries, and save-time mapping validation.",
5
5
  "keywords": [
6
6
  "strapi",
@@ -53,7 +53,7 @@
53
53
  "CHANGELOG.md"
54
54
  ],
55
55
  "scripts": {
56
- "build": "strapi-plugin build && node scripts/build-types.mjs",
56
+ "build": "strapi-plugin build && node scripts/build-types.mjs && node scripts/check-externals.mjs",
57
57
  "watch": "strapi-plugin watch",
58
58
  "verify": "strapi-plugin verify",
59
59
  "test": "vitest run",
@@ -88,6 +88,7 @@
88
88
  "@strapi/utils": "^5.0.0",
89
89
  "react": "^17.0.0 || ^18.0.0",
90
90
  "react-dom": "^17.0.0 || ^18.0.0",
91
+ "react-router-dom": "^6.0.0",
91
92
  "styled-components": "^6.0.0"
92
93
  },
93
94
  "strapi": {