@flamingo-stack/openframe-frontend-core 0.0.747 → 0.0.748

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 (46) hide show
  1. package/dist/{chunk-TYW7NBP7.cjs → chunk-46EIXJFC.cjs} +9 -9
  2. package/dist/{chunk-PIQRV4EQ.cjs → chunk-4AZHFLOM.cjs} +3 -3
  3. package/dist/{chunk-R3FXJXSQ.cjs → chunk-6XP6RNFD.cjs} +273 -273
  4. package/dist/{chunk-4DT5YXTM.cjs → chunk-7Y3VMMJB.cjs} +7 -7
  5. package/dist/{chunk-7Y5U3Y4S.cjs → chunk-BBTSJYTR.cjs} +38 -33
  6. package/dist/{chunk-FCQCEQBY.cjs → chunk-D4XZL27V.cjs} +4 -4
  7. package/dist/{chunk-2CEQGGRN.cjs → chunk-EH3LOWGY.cjs} +17 -17
  8. package/dist/{chunk-O6QQ44I3.cjs → chunk-G2ELX3DG.cjs} +11 -11
  9. package/dist/{chunk-LLAKQT3B.cjs → chunk-GE4PCDNZ.cjs} +6 -6
  10. package/dist/{chunk-WY4FKKCV.cjs → chunk-H34A2765.cjs} +37 -37
  11. package/dist/{chunk-IJA3OZWF.cjs → chunk-JNBOQ7F2.cjs} +9 -9
  12. package/dist/{chunk-JPSMPXCH.cjs → chunk-JOPFX3PJ.cjs} +66 -66
  13. package/dist/{chunk-6RTHHU3S.cjs → chunk-OZUJYBQ2.cjs} +4 -4
  14. package/dist/{chunk-MA7T36JY.cjs → chunk-TRXCQADV.cjs} +33 -33
  15. package/dist/{chunk-HTMHDEIV.cjs → chunk-UNR74CAC.cjs} +4 -4
  16. package/dist/{chunk-4AWI6CCU.cjs → chunk-YKJQM2O6.cjs} +25 -25
  17. package/dist/{chunk-C7NTL2GV.cjs → chunk-ZNUSYMH7.cjs} +15 -15
  18. package/dist/{cloud-tenants-QJZIF2JS.cjs → cloud-tenants-V5727B7F.cjs} +4 -4
  19. package/dist/components/case-studies/index.cjs +14 -14
  20. package/dist/components/chat/index.cjs +3 -3
  21. package/dist/components/contact/index.cjs +5 -5
  22. package/dist/components/docs/index.cjs +8 -8
  23. package/dist/components/embeds/index.cjs +5 -5
  24. package/dist/components/faq/index.cjs +6 -6
  25. package/dist/components/features/index.cjs +4 -4
  26. package/dist/components/help-center-pages/index.cjs +74 -74
  27. package/dist/components/index.cjs +37 -37
  28. package/dist/components/meeting-scheduler/index.cjs +22 -22
  29. package/dist/components/navigation/index.cjs +7 -7
  30. package/dist/components/onboarding-guides/index.cjs +6 -6
  31. package/dist/components/product-demo/index.cjs +7 -7
  32. package/dist/components/tickets/index.cjs +9 -9
  33. package/dist/components/ui/index.cjs +4 -4
  34. package/dist/{devices-V55KQCAL.cjs → devices-WWMXIIHI.cjs} +5 -5
  35. package/dist/{embeddable-chat-5CDR4I6E.cjs → embeddable-chat-IJHCGQ24.cjs} +64 -64
  36. package/dist/index.cjs +8 -8
  37. package/dist/{knowledge-S3VGDRKR.cjs → knowledge-JZP4RIXB.cjs} +5 -5
  38. package/dist/{logs-K5E2BGZE.cjs → logs-WIRYFNUC.cjs} +12 -12
  39. package/dist/{policies-BWU4FRFE.cjs → policies-X7OJYA7G.cjs} +8 -8
  40. package/dist/{scripts-25UPGXZU.cjs → scripts-GRMT2NGW.cjs} +9 -9
  41. package/dist/{software-update-F6UC7ULZ.cjs → software-update-G3QOB7RT.cjs} +7 -7
  42. package/dist/utils/index.cjs +49 -48
  43. package/dist/utils/markdown-to-plain.d.ts.map +1 -1
  44. package/dist/utils/markdown-to-plain.js +12 -7
  45. package/package.json +7 -2
  46. package/src/utils/markdown-to-plain.ts +25 -16
@@ -8,7 +8,7 @@ var _chunkSTEJZPIOcjs = require('./chunk-STEJZPIO.cjs');
8
8
  var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
9
9
 
10
10
 
11
- var _chunkR3FXJXSQcjs = require('./chunk-R3FXJXSQ.cjs');
11
+ var _chunk6XP6RNFDcjs = require('./chunk-6XP6RNFD.cjs');
12
12
  require('./chunk-HNLI4OU5.cjs');
13
13
  require('./chunk-NTGIQP7O.cjs');
14
14
  require('./chunk-U6XWGK53.cjs');
@@ -21,10 +21,10 @@ require('./chunk-A6P6DHEZ.cjs');
21
21
  require('./chunk-MZ4KBSH7.cjs');
22
22
  require('./chunk-BBM2ICOY.cjs');
23
23
  require('./chunk-YUMFVQIN.cjs');
24
- require('./chunk-C7NTL2GV.cjs');
24
+ require('./chunk-ZNUSYMH7.cjs');
25
25
 
26
26
 
27
- var _chunk7Y5U3Y4Scjs = require('./chunk-7Y5U3Y4S.cjs');
27
+ var _chunkBBTSJYTRcjs = require('./chunk-BBTSJYTR.cjs');
28
28
  require('./chunk-PSIKUDUV.cjs');
29
29
  require('./chunk-3RFQPQ7Z.cjs');
30
30
  require('./chunk-YRULLK7N.cjs');
@@ -1905,10 +1905,10 @@ function KnowledgeScreen(_props) {
1905
1905
  const cast = _chunkSTEJZPIOcjs.useProductDemoCast.call(void 0, );
1906
1906
  const fixture = _react.useMemo.call(void 0, () => buildKnowledgeFixture(cast), [cast]);
1907
1907
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1908
- _chunkR3FXJXSQcjs.KnowledgeBaseArticleView,
1908
+ _chunk6XP6RNFDcjs.KnowledgeBaseArticleView,
1909
1909
  {
1910
1910
  ...fixture.article,
1911
- content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7Y5U3Y4Scjs.SimpleMarkdownRenderer, { content: fixture.content, textSize: "compact" })
1911
+ content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBBTSJYTRcjs.SimpleMarkdownRenderer, { content: fixture.content, textSize: "compact" })
1912
1912
  }
1913
1913
  ) });
1914
1914
  }
@@ -16,7 +16,7 @@ var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
16
16
 
17
17
 
18
18
 
19
- var _chunkR3FXJXSQcjs = require('./chunk-R3FXJXSQ.cjs');
19
+ var _chunk6XP6RNFDcjs = require('./chunk-6XP6RNFD.cjs');
20
20
  require('./chunk-HNLI4OU5.cjs');
21
21
  require('./chunk-NTGIQP7O.cjs');
22
22
  require('./chunk-U6XWGK53.cjs');
@@ -31,8 +31,8 @@ require('./chunk-BBM2ICOY.cjs');
31
31
  require('./chunk-YUMFVQIN.cjs');
32
32
 
33
33
 
34
- var _chunkC7NTL2GVcjs = require('./chunk-C7NTL2GV.cjs');
35
- require('./chunk-7Y5U3Y4S.cjs');
34
+ var _chunkZNUSYMH7cjs = require('./chunk-ZNUSYMH7.cjs');
35
+ require('./chunk-BBTSJYTR.cjs');
36
36
  require('./chunk-PSIKUDUV.cjs');
37
37
  require('./chunk-3RFQPQ7Z.cjs');
38
38
  require('./chunk-YRULLK7N.cjs');
@@ -1886,7 +1886,7 @@ function entry(logId, minutesAgo, severity, toolType, device2, summary) {
1886
1886
  id: logId,
1887
1887
  logId,
1888
1888
  timestamp: displayTime(_chunkDKOLQPE7cjs.demoMinutesAgo.call(void 0, minutesAgo)),
1889
- status: { label: severity, variant: _chunkR3FXJXSQcjs.logSeverityVariant.call(void 0, severity) },
1889
+ status: { label: severity, variant: _chunk6XP6RNFDcjs.logSeverityVariant.call(void 0, severity) },
1890
1890
  source: { name: toolType, toolType },
1891
1891
  device: device2,
1892
1892
  description: { title: summary }
@@ -1958,13 +1958,13 @@ var NO_FILTERS = {};
1958
1958
  var ACTION_COLUMNS = ["copy", "quickView", "open"];
1959
1959
  var BESIDE_DRAWER_HIDDEN = [...ACTION_COLUMNS, "tool", "source"];
1960
1960
  var logHref = () => "#";
1961
- var copyAction = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR3FXJXSQcjs.LogCopyIconButton, {});
1961
+ var copyAction = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XP6RNFDcjs.LogCopyIconButton, {});
1962
1962
  function LogsScreen({ compact = false }) {
1963
1963
  const [dock, setDock] = _react.useState.call(void 0, null);
1964
1964
  const selected = LOGS_FIXTURE_SELECTED;
1965
1965
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full bg-ods-bg", children: [
1966
1966
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1 overflow-clip", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1967
- _chunkR3FXJXSQcjs.LogsPageView,
1967
+ _chunk6XP6RNFDcjs.LogsPageView,
1968
1968
  {
1969
1969
  showHeader: false,
1970
1970
  className: "p-[var(--spacing-system-l)]",
@@ -1972,7 +1972,7 @@ function LogsScreen({ compact = false }) {
1972
1972
  onSearchChange: noop,
1973
1973
  onOpenFilters: noop,
1974
1974
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1975
- _chunkR3FXJXSQcjs.LogsTableView,
1975
+ _chunk6XP6RNFDcjs.LogsTableView,
1976
1976
  {
1977
1977
  logs: LOGS_FIXTURE_ENTRIES,
1978
1978
  facets: LOGS_FIXTURE_FACETS,
@@ -1986,8 +1986,8 @@ function LogsScreen({ compact = false }) {
1986
1986
  )
1987
1987
  }
1988
1988
  ) }),
1989
- !compact && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: setDock, className: "relative w-[calc(400px+var(--spacing-system-m))] shrink-0", children: dock && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR3FXJXSQcjs.AppLayoutDrawerContainerContext.Provider, { value: dock, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1990
- _chunkR3FXJXSQcjs.LogDrawer,
1989
+ !compact && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: setDock, className: "relative w-[calc(400px+var(--spacing-system-m))] shrink-0", children: dock && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XP6RNFDcjs.AppLayoutDrawerContainerContext.Provider, { value: dock, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1990
+ _chunk6XP6RNFDcjs.LogDrawer,
1991
1991
  {
1992
1992
  docked: true,
1993
1993
  isOpen: true,
@@ -1999,12 +1999,12 @@ function LogsScreen({ compact = false }) {
1999
1999
  { label: "Log ID", value: selected.logId },
2000
2000
  {
2001
2001
  label: "Source",
2002
- value: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR3FXJXSQcjs.ToolBadge, { toolType: _chunkC7NTL2GVcjs.normalizeToolTypeWithFallback.call(void 0, selected.source.toolType) })
2002
+ value: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XP6RNFDcjs.ToolBadge, { toolType: _chunkZNUSYMH7cjs.normalizeToolTypeWithFallback.call(void 0, selected.source.toolType) })
2003
2003
  },
2004
- { label: "Device", value: _chunkR3FXJXSQcjs.logSourceLabels.call(void 0, selected.device).deviceName }
2004
+ { label: "Device", value: _chunk6XP6RNFDcjs.logSourceLabels.call(void 0, selected.device).deviceName }
2005
2005
  ],
2006
2006
  deviceCard: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2007
- _chunkR3FXJXSQcjs.DeviceCard,
2007
+ _chunk6XP6RNFDcjs.DeviceCard,
2008
2008
  {
2009
2009
  ...LOGS_FIXTURE_DEVICE,
2010
2010
  actions: {
@@ -10,7 +10,7 @@ var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
10
10
 
11
11
 
12
12
 
13
- var _chunkR3FXJXSQcjs = require('./chunk-R3FXJXSQ.cjs');
13
+ var _chunk6XP6RNFDcjs = require('./chunk-6XP6RNFD.cjs');
14
14
  require('./chunk-HNLI4OU5.cjs');
15
15
  require('./chunk-NTGIQP7O.cjs');
16
16
  require('./chunk-U6XWGK53.cjs');
@@ -23,8 +23,8 @@ require('./chunk-A6P6DHEZ.cjs');
23
23
  require('./chunk-MZ4KBSH7.cjs');
24
24
  require('./chunk-BBM2ICOY.cjs');
25
25
  require('./chunk-YUMFVQIN.cjs');
26
- require('./chunk-C7NTL2GV.cjs');
27
- require('./chunk-7Y5U3Y4S.cjs');
26
+ require('./chunk-ZNUSYMH7.cjs');
27
+ require('./chunk-BBTSJYTR.cjs');
28
28
  require('./chunk-PSIKUDUV.cjs');
29
29
  require('./chunk-3RFQPQ7Z.cjs');
30
30
  require('./chunk-YRULLK7N.cjs');
@@ -1891,14 +1891,14 @@ var POLICIES = [
1891
1891
  policy("policy-local-admins", "No local admins", "No everyday account is a local administrator.", false, 0)
1892
1892
  ];
1893
1893
  var POLICIES_FIXTURE = {
1894
- summary: _chunkR3FXJXSQcjs.computePolicySummary.call(void 0, POLICIES),
1894
+ summary: _chunk6XP6RNFDcjs.computePolicySummary.call(void 0, POLICIES),
1895
1895
  rows: POLICIES.map((item) => ({
1896
1896
  id: item.id,
1897
1897
  name: item.name,
1898
1898
  description: item.description,
1899
1899
  critical: item.critical,
1900
1900
  severityLabel: item.critical ? "Critical" : "Low",
1901
- status: _chunkR3FXJXSQcjs.getPolicyTableStatus.call(void 0, item),
1901
+ status: _chunk6XP6RNFDcjs.getPolicyTableStatus.call(void 0, item),
1902
1902
  actions: [
1903
1903
  { label: "Policy Details", onClick: noop },
1904
1904
  { label: "Delete Policy", onClick: noop }
@@ -1912,16 +1912,16 @@ var POLICIES_FIXTURE = {
1912
1912
  var _jsxruntime = require('react/jsx-runtime');
1913
1913
  function PoliciesScreen({ compact = false }) {
1914
1914
  const table = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1915
- _chunkR3FXJXSQcjs.PoliciesTable,
1915
+ _chunk6XP6RNFDcjs.PoliciesTable,
1916
1916
  {
1917
1917
  rows: POLICIES_FIXTURE.rows,
1918
1918
  rowAsLink: true,
1919
- rightSlot: compact ? void 0 : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR3FXJXSQcjs.DataTable.RowCount, {}),
1919
+ rightSlot: compact ? void 0 : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XP6RNFDcjs.DataTable.RowCount, {}),
1920
1920
  emptyMessage: "No policies found."
1921
1921
  }
1922
1922
  );
1923
1923
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col gap-[var(--spacing-system-l)] bg-ods-bg p-[var(--spacing-system-l)]", children: [
1924
- !compact && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR3FXJXSQcjs.PolicySummaryCards, { summary: POLICIES_FIXTURE.summary, now: POLICIES_FIXTURE.now }),
1924
+ !compact && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XP6RNFDcjs.PolicySummaryCards, { summary: POLICIES_FIXTURE.summary, now: POLICIES_FIXTURE.now }),
1925
1925
  table
1926
1926
  ] });
1927
1927
  }
@@ -13,7 +13,7 @@ var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkR3FXJXSQcjs = require('./chunk-R3FXJXSQ.cjs');
16
+ var _chunk6XP6RNFDcjs = require('./chunk-6XP6RNFD.cjs');
17
17
  require('./chunk-HNLI4OU5.cjs');
18
18
  require('./chunk-NTGIQP7O.cjs');
19
19
 
@@ -28,8 +28,8 @@ require('./chunk-A6P6DHEZ.cjs');
28
28
  require('./chunk-MZ4KBSH7.cjs');
29
29
  require('./chunk-BBM2ICOY.cjs');
30
30
  require('./chunk-YUMFVQIN.cjs');
31
- require('./chunk-C7NTL2GV.cjs');
32
- require('./chunk-7Y5U3Y4S.cjs');
31
+ require('./chunk-ZNUSYMH7.cjs');
32
+ require('./chunk-BBTSJYTR.cjs');
33
33
  require('./chunk-PSIKUDUV.cjs');
34
34
  require('./chunk-3RFQPQ7Z.cjs');
35
35
  require('./chunk-YRULLK7N.cjs');
@@ -1995,8 +1995,8 @@ function buildScriptsFixture(cast) {
1995
1995
  var _jsxruntime = require('react/jsx-runtime');
1996
1996
  var WIDE_HIDDEN_COLUMNS = ["result", "open"];
1997
1997
  var COMPACT_COLUMNS = [
1998
- { ..._chunkR3FXJXSQcjs.EXECUTION_COLUMNS.machineId, width: "flex-1 min-w-0", hideAt: void 0 },
1999
- _chunkR3FXJXSQcjs.EXECUTION_COLUMNS.status
1998
+ { ..._chunk6XP6RNFDcjs.EXECUTION_COLUMNS.machineId, width: "flex-1 min-w-0", hideAt: void 0 },
1999
+ _chunk6XP6RNFDcjs.EXECUTION_COLUMNS.status
2000
2000
  ];
2001
2001
  var COMPACT_ROWS = 4;
2002
2002
  var TOKEN_CLASS = {
@@ -2055,7 +2055,7 @@ function ScriptCodePicture({ script }) {
2055
2055
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center justify-between gap-[var(--spacing-system-m)]", children: [
2056
2056
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: `Written by ${provenance.author} \xB7 approved by ${provenance.approver}` }),
2057
2057
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2058
- _chunkR3FXJXSQcjs.ScriptShellBadge,
2058
+ _chunk6XP6RNFDcjs.ScriptShellBadge,
2059
2059
  {
2060
2060
  value: script.shellType,
2061
2061
  className: "shrink-0 text-ods-text-secondary text-h6",
@@ -2079,7 +2079,7 @@ function ScriptsScreen({ compact = false }) {
2079
2079
  return (
2080
2080
  // Four runs of the card's row height fill the frame; the padding is what is left round them.
2081
2081
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full overflow-hidden bg-ods-bg p-[var(--spacing-system-xsf)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2082
- _chunkR3FXJXSQcjs.ScriptExecutionsTable,
2082
+ _chunk6XP6RNFDcjs.ScriptExecutionsTable,
2083
2083
  {
2084
2084
  rows: fixture.executions.slice(0, COMPACT_ROWS),
2085
2085
  columns: COMPACT_COLUMNS,
@@ -2089,13 +2089,13 @@ function ScriptsScreen({ compact = false }) {
2089
2089
  ) })
2090
2090
  );
2091
2091
  }
2092
- const renderOutput = (row) => row.id === fixture.openExecutionId ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkR3FXJXSQcjs.ScriptExecutionResult, { result: row.result, empty: "\u2014" }) : null;
2092
+ const renderOutput = (row) => row.id === fixture.openExecutionId ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XP6RNFDcjs.ScriptExecutionResult, { result: row.result, empty: "\u2014" }) : null;
2093
2093
  return (
2094
2094
  // The frame's tighter padding and no header row: the output opened under a run needs the height.
2095
2095
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full gap-[var(--spacing-system-m)] overflow-hidden bg-ods-bg p-[var(--spacing-system-m)]", children: [
2096
2096
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[39%] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScriptCodePicture, { script: fixture.script }) }),
2097
2097
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1 overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2098
- _chunkR3FXJXSQcjs.ScriptExecutionsTable,
2098
+ _chunk6XP6RNFDcjs.ScriptExecutionsTable,
2099
2099
  {
2100
2100
  rows: fixture.executions,
2101
2101
  hideColumns: WIDE_HIDDEN_COLUMNS,
@@ -15,7 +15,7 @@ var _chunkDKOLQPE7cjs = require('./chunk-DKOLQPE7.cjs');
15
15
 
16
16
 
17
17
 
18
- var _chunkR3FXJXSQcjs = require('./chunk-R3FXJXSQ.cjs');
18
+ var _chunk6XP6RNFDcjs = require('./chunk-6XP6RNFD.cjs');
19
19
  require('./chunk-HNLI4OU5.cjs');
20
20
  require('./chunk-NTGIQP7O.cjs');
21
21
 
@@ -30,8 +30,8 @@ require('./chunk-A6P6DHEZ.cjs');
30
30
  require('./chunk-MZ4KBSH7.cjs');
31
31
  require('./chunk-BBM2ICOY.cjs');
32
32
  require('./chunk-YUMFVQIN.cjs');
33
- require('./chunk-C7NTL2GV.cjs');
34
- require('./chunk-7Y5U3Y4S.cjs');
33
+ require('./chunk-ZNUSYMH7.cjs');
34
+ require('./chunk-BBTSJYTR.cjs');
35
35
  require('./chunk-PSIKUDUV.cjs');
36
36
  require('./chunk-3RFQPQ7Z.cjs');
37
37
  require('./chunk-YRULLK7N.cjs');
@@ -1922,12 +1922,12 @@ function StaticPackageField({ value }) {
1922
1922
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1923
1923
  _chunkU6XWGK53cjs.Autocomplete,
1924
1924
  {
1925
- label: _chunkR3FXJXSQcjs.PACKAGE_SEARCH_LABEL,
1925
+ label: _chunk6XP6RNFDcjs.PACKAGE_SEARCH_LABEL,
1926
1926
  labelVariant: "large",
1927
1927
  options: value ? [{ value: value.id, label: value.name, description: _nullishCoalesce(value.description, () => ( void 0)) }] : [],
1928
1928
  value: _nullishCoalesce(_optionalChain([value, 'optionalAccess', _ => _.id]), () => ( null)),
1929
1929
  onChange: noop,
1930
- placeholder: _chunkR3FXJXSQcjs.PACKAGE_SEARCH_PLACEHOLDER
1930
+ placeholder: _chunk6XP6RNFDcjs.PACKAGE_SEARCH_PLACEHOLDER
1931
1931
  }
1932
1932
  );
1933
1933
  }
@@ -1941,7 +1941,7 @@ function SoftwareUpdateScreen({ compact = false }) {
1941
1941
  [fixture.devices, fixture.selectedIds]
1942
1942
  );
1943
1943
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full bg-ods-bg pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1944
- _chunkR3FXJXSQcjs.SoftwareActionForm,
1944
+ _chunk6XP6RNFDcjs.SoftwareActionForm,
1945
1945
  {
1946
1946
  action: fixture.action,
1947
1947
  showHeader: false,
@@ -1953,7 +1953,7 @@ function SoftwareUpdateScreen({ compact = false }) {
1953
1953
  initialValues: fixture.initialValues,
1954
1954
  renderPackageSearch,
1955
1955
  renderDevicePicker: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1956
- _chunkR3FXJXSQcjs.DeviceSelector,
1956
+ _chunk6XP6RNFDcjs.DeviceSelector,
1957
1957
  {
1958
1958
  devices: selected,
1959
1959
  loading: false,
@@ -6,21 +6,18 @@ var clsx = require('clsx');
6
6
  var tailwindMerge = require('tailwind-merge');
7
7
  var libphonenumberJs = require('libphonenumber-js');
8
8
  var lucideReact = require('lucide-react');
9
+ var hastUtilRaw = require('hast-util-raw');
9
10
  var hastUtilToText = require('hast-util-to-text');
10
- var rehypeRaw = require('rehype-raw');
11
- var remark = require('remark');
12
- var remarkBreaks = require('remark-breaks');
13
- var remarkGfm = require('remark-gfm');
14
- var remarkRehype = require('remark-rehype');
11
+ var mdastUtilFromMarkdown = require('mdast-util-from-markdown');
12
+ var mdastUtilGfm = require('mdast-util-gfm');
13
+ var mdastUtilNewlineToBreak = require('mdast-util-newline-to-break');
14
+ var mdastUtilToHast = require('mdast-util-to-hast');
15
+ var micromarkExtensionGfm = require('micromark-extension-gfm');
15
16
  var unistUtilVisit = require('unist-util-visit');
16
17
 
17
18
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
18
19
 
19
20
  var React__default = /*#__PURE__*/_interopDefault(React);
20
- var rehypeRaw__default = /*#__PURE__*/_interopDefault(rehypeRaw);
21
- var remarkBreaks__default = /*#__PURE__*/_interopDefault(remarkBreaks);
22
- var remarkGfm__default = /*#__PURE__*/_interopDefault(remarkGfm);
23
- var remarkRehype__default = /*#__PURE__*/_interopDefault(remarkRehype);
24
21
 
25
22
  var __defProp = Object.defineProperty;
26
23
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -82622,9 +82619,9 @@ function createLocalStorageAdapter(options) {
82622
82619
  const storage = getStorage(backend);
82623
82620
  if (!storage) return null;
82624
82621
  try {
82625
- const raw = storage.getItem(resolveKey());
82626
- if (!raw) return null;
82627
- const parsed = JSON.parse(raw);
82622
+ const raw2 = storage.getItem(resolveKey());
82623
+ if (!raw2) return null;
82624
+ const parsed = JSON.parse(raw2);
82628
82625
  if (options.validate && !options.validate(parsed)) return null;
82629
82626
  return parsed;
82630
82627
  } catch (err) {
@@ -83809,10 +83806,10 @@ async function readLeadingDecisionFrame(response) {
83809
83806
  throw new Error("readLeadingDecisionFrame: text-body sentinel arrived before leading frame");
83810
83807
  }
83811
83808
  if (nullIdx !== -1) {
83812
- const raw = buffer.slice(0, nullIdx);
83809
+ const raw2 = buffer.slice(0, nullIdx);
83813
83810
  let parsed;
83814
83811
  try {
83815
- parsed = JSON.parse(raw);
83812
+ parsed = JSON.parse(raw2);
83816
83813
  } catch (err) {
83817
83814
  throw new Error(`readLeadingDecisionFrame: leading JSON parse failed: ${err.message}`);
83818
83815
  }
@@ -83915,11 +83912,11 @@ function buildAutoContinuationDirective(toolName, opts = {}) {
83915
83912
  }
83916
83913
 
83917
83914
  // src/components/chat/utils/flatten-assistant-content.ts
83918
- function flattenAssistantContent(raw) {
83919
- if (typeof raw === "string") return raw;
83920
- if (!Array.isArray(raw)) return "";
83915
+ function flattenAssistantContent(raw2) {
83916
+ if (typeof raw2 === "string") return raw2;
83917
+ if (!Array.isArray(raw2)) return "";
83921
83918
  const parts = [];
83922
- for (const seg of raw) {
83919
+ for (const seg of raw2) {
83923
83920
  if (seg && typeof seg === "object" && seg.type === "text") {
83924
83921
  const t = seg.text;
83925
83922
  if (typeof t === "string" && t.length > 0) parts.push(t);
@@ -83933,8 +83930,8 @@ var SCROLL_ANCHOR = { TOP: "top", BOTTOM: "bottom" };
83933
83930
 
83934
83931
  // src/components/chat/utils/scroll-anchor.ts
83935
83932
  var SCROLL_ANCHOR_WIRE_KEY = "scrollAnchor";
83936
- function parseScrollAnchor(raw) {
83937
- return raw === SCROLL_ANCHOR.TOP || raw === SCROLL_ANCHOR.BOTTOM ? raw : null;
83933
+ function parseScrollAnchor(raw2) {
83934
+ return raw2 === SCROLL_ANCHOR.TOP || raw2 === SCROLL_ANCHOR.BOTTOM ? raw2 : null;
83938
83935
  }
83939
83936
 
83940
83937
  // src/components/chat/utils/slash-dispatch-utils.ts
@@ -83943,10 +83940,10 @@ var WIRE_ID_REGEX = /^[A-Za-z0-9._:/-]+$/;
83943
83940
  var WIRE_TABLE_ID_MAX = 60;
83944
83941
  var WIRE_ID_MAX = 200;
83945
83942
  var WIRE_QUERY_MAX = 2e3;
83946
- function parseWireCommandOverride(raw) {
83947
- if (!raw || typeof raw !== "object") return null;
83943
+ function parseWireCommandOverride(raw2) {
83944
+ if (!raw2 || typeof raw2 !== "object") return null;
83948
83945
  const out = {};
83949
- const r = raw;
83946
+ const r = raw2;
83950
83947
  if (r.entityIdFilter && typeof r.entityIdFilter === "object") {
83951
83948
  const f = r.entityIdFilter;
83952
83949
  if (typeof f.tableId === "string" && f.tableId.length > 0 && f.tableId.length <= WIRE_TABLE_ID_MAX && WIRE_TABLE_ID_REGEX.test(f.tableId) && typeof f.id === "string" && f.id.length > 0 && f.id.length <= WIRE_ID_MAX && WIRE_ID_REGEX.test(f.id)) {
@@ -84277,8 +84274,8 @@ function scrollElementIntoView(target, options = {}) {
84277
84274
  };
84278
84275
  const computeTarget = () => {
84279
84276
  const offset = Math.max(headerOffset, declaredScrollMarginTop(target));
84280
- const raw = container ? container.scrollTop + (target.getBoundingClientRect().top - container.getBoundingClientRect().top) - offset : target.getBoundingClientRect().top + window.scrollY - offset;
84281
- const adjusted = adjustTargetY ? adjustTargetY(raw) : raw;
84277
+ const raw2 = container ? container.scrollTop + (target.getBoundingClientRect().top - container.getBoundingClientRect().top) - offset : target.getBoundingClientRect().top + window.scrollY - offset;
84278
+ const adjusted = adjustTargetY ? adjustTargetY(raw2) : raw2;
84282
84279
  const maxScroll = container ? Math.max(0, container.scrollHeight - container.clientHeight) : Math.max(0, document.documentElement.scrollHeight - window.innerHeight);
84283
84280
  return Math.min(Math.max(0, adjusted), maxScroll);
84284
84281
  };
@@ -84421,14 +84418,14 @@ function scanHeadings(content, options = {}) {
84421
84418
  }
84422
84419
  if (includeRawHtml && line.indexOf("<") !== -1) {
84423
84420
  RAW_HEADING_RE.lastIndex = 0;
84424
- let raw;
84421
+ let raw2;
84425
84422
  let matched = false;
84426
- while ((raw = RAW_HEADING_RE.exec(line)) !== null) {
84423
+ while ((raw2 = RAW_HEADING_RE.exec(line)) !== null) {
84427
84424
  matched = true;
84428
84425
  out.push({
84429
84426
  line: i + 1,
84430
- level: Number(raw[1]),
84431
- text: raw[2].replace(/<[^>]*>/g, "").trim()
84427
+ level: Number(raw2[1]),
84428
+ text: raw2[2].replace(/<[^>]*>/g, "").trim()
84432
84429
  });
84433
84430
  }
84434
84431
  if (matched) {
@@ -84466,8 +84463,8 @@ function createHeadingIdDeduper() {
84466
84463
  }
84467
84464
 
84468
84465
  // src/utils/anchor-id.ts
84469
- function normalizeAnchorId(raw) {
84470
- return slugifyHeadingText(raw).replace(/-+/g, "-").replace(/^-+|-+$/g, "");
84466
+ function normalizeAnchorId(raw2) {
84467
+ return slugifyHeadingText(raw2).replace(/-+/g, "-").replace(/^-+|-+$/g, "");
84471
84468
  }
84472
84469
  var HEADING_SELECTOR = "h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]";
84473
84470
  var DUPLICATE_SUFFIX_RE = /^(.+)-(\d+)$/;
@@ -85077,9 +85074,9 @@ function sanitizeRescueValues(values) {
85077
85074
  if (!values || typeof values !== "object") return out;
85078
85075
  for (const key of FORM_RESCUE_VALUE_FIELDS) {
85079
85076
  if (isExcludedRescueField(key)) continue;
85080
- const raw = values[key];
85081
- if (typeof raw !== "string") continue;
85082
- const trimmed = raw.trim().slice(0, FORM_RESCUE_MAX_VALUE_CHARS);
85077
+ const raw2 = values[key];
85078
+ if (typeof raw2 !== "string") continue;
85079
+ const trimmed = raw2.trim().slice(0, FORM_RESCUE_MAX_VALUE_CHARS);
85083
85080
  if (trimmed) out[key] = trimmed;
85084
85081
  }
85085
85082
  return out;
@@ -85367,11 +85364,15 @@ function formatMarkdownLink({ text, url, rel }) {
85367
85364
  function stripInlineMarkdown(s) {
85368
85365
  return s.replace(/\[([^\]]+)\]\([^)]+\)/g, "$1").replace(/\*\*([^*]+)\*\*/g, "$1").replace(/\*([^*]+)\*/g, "$1").replace(/`([^`]+)`/g, "$1");
85369
85366
  }
85370
- var toHtmlTree = remark.remark().use(remarkGfm__default.default).use(remarkBreaks__default.default).use(remarkRehype__default.default, { allowDangerousHtml: true }).use(rehypeRaw__default.default);
85371
85367
  var NOT_PROSE = /* @__PURE__ */ new Set(["pre", "img"]);
85372
85368
  var TABLE_SECTIONS = /* @__PURE__ */ new Set(["thead", "tbody", "tfoot"]);
85369
+ function htmlTree(markdown) {
85370
+ const mdast = mdastUtilFromMarkdown.fromMarkdown(markdown, { extensions: [micromarkExtensionGfm.gfm()], mdastExtensions: [mdastUtilGfm.gfmFromMarkdown()] });
85371
+ mdastUtilNewlineToBreak.newlineToBreak(mdast);
85372
+ return hastUtilRaw.raw(mdastUtilToHast.toHast(mdast, { allowDangerousHtml: true }));
85373
+ }
85373
85374
  function proseTree(markdown) {
85374
- const tree = toHtmlTree.runSync(toHtmlTree.parse(markdown));
85375
+ const tree = htmlTree(markdown);
85375
85376
  unistUtilVisit.visit(tree, "element", (node, index, parent) => {
85376
85377
  if (NOT_PROSE.has(node.tagName) && parent && index !== void 0) {
85377
85378
  parent.children.splice(index, 1);
@@ -85676,12 +85677,12 @@ async function fileContentKey(file) {
85676
85677
  }
85677
85678
 
85678
85679
  // src/utils/search-params.ts
85679
- function positiveInt(raw, fallback, { min = 1, max } = {}) {
85680
+ function positiveInt(raw2, fallback, { min = 1, max } = {}) {
85680
85681
  const capped = (v) => max == null ? v : Math.min(v, max);
85681
- if (raw === null || raw === void 0 || raw === "") {
85682
+ if (raw2 === null || raw2 === void 0 || raw2 === "") {
85682
85683
  return typeof fallback === "number" ? capped(fallback) : fallback;
85683
85684
  }
85684
- const n = Math.trunc(Number(raw));
85685
+ const n = Math.trunc(Number(raw2));
85685
85686
  if (!Number.isFinite(n) || n < min) {
85686
85687
  return typeof fallback === "number" ? capped(fallback) : fallback;
85687
85688
  }
@@ -85709,32 +85710,32 @@ function firstParamValue(input, key) {
85709
85710
  }
85710
85711
  function allParamValues(input, key) {
85711
85712
  if (!input) return [];
85712
- const raw = input instanceof URLSearchParams ? input.getAll(key) : input[key];
85713
- const list = Array.isArray(raw) ? raw : raw === void 0 ? [] : [raw];
85713
+ const raw2 = input instanceof URLSearchParams ? input.getAll(key) : input[key];
85714
+ const list = Array.isArray(raw2) ? raw2 : raw2 === void 0 ? [] : [raw2];
85714
85715
  if (list.length === 1 && list[0]?.includes(",")) return list[0].split(",").filter(Boolean);
85715
85716
  return list.filter((v) => v !== void 0 && v !== "");
85716
85717
  }
85717
- function coerceScalar(raw, config) {
85718
- if (raw === void 0 || raw === "") return void 0;
85718
+ function coerceScalar(raw2, config) {
85719
+ if (raw2 === void 0 || raw2 === "") return void 0;
85719
85720
  switch (config.type) {
85720
85721
  case "int": {
85721
85722
  const int = config;
85722
- return positiveInt(raw, int.default, { min: int.min, max: int.max });
85723
+ return positiveInt(raw2, int.default, { min: int.min, max: int.max });
85723
85724
  }
85724
85725
  case "number": {
85725
- const n = Number(raw);
85726
+ const n = Number(raw2);
85726
85727
  return Number.isFinite(n) ? n : void 0;
85727
85728
  }
85728
85729
  case "boolean":
85729
- return raw === "true" || raw === "1";
85730
+ return raw2 === "true" || raw2 === "1";
85730
85731
  case "object":
85731
85732
  try {
85732
- return JSON.parse(raw);
85733
+ return JSON.parse(raw2);
85733
85734
  } catch {
85734
85735
  return void 0;
85735
85736
  }
85736
85737
  default:
85737
- return raw;
85738
+ return raw2;
85738
85739
  }
85739
85740
  }
85740
85741
  function parseSchemaParams(schema, input, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-to-plain.d.ts","sourceRoot":"","sources":["../../src/utils/markdown-to-plain.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;gFAEgF;AAChF,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAMrD;AAyCD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,MAAM,CAmBlG"}
1
+ {"version":3,"file":"markdown-to-plain.d.ts","sourceRoot":"","sources":["../../src/utils/markdown-to-plain.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;gFAEgF;AAChF,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAMrD;AAyCD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,MAAM,CAmBlG"}
@@ -1,18 +1,23 @@
1
+ import { raw } from "hast-util-raw";
1
2
  import { toText } from "hast-util-to-text";
2
- import rehypeRaw from "rehype-raw";
3
- import { remark } from "remark";
4
- import remarkBreaks from "remark-breaks";
5
- import remarkGfm from "remark-gfm";
6
- import remarkRehype from "remark-rehype";
3
+ import { fromMarkdown } from "mdast-util-from-markdown";
4
+ import { gfmFromMarkdown } from "mdast-util-gfm";
5
+ import { newlineToBreak } from "mdast-util-newline-to-break";
6
+ import { toHast } from "mdast-util-to-hast";
7
+ import { gfm } from "micromark-extension-gfm";
7
8
  import { SKIP, visit } from "unist-util-visit";
8
9
  function stripInlineMarkdown(s) {
9
10
  return s.replace(/\[([^\]]+)\]\([^)]+\)/g, "$1").replace(/\*\*([^*]+)\*\*/g, "$1").replace(/\*([^*]+)\*/g, "$1").replace(/`([^`]+)`/g, "$1");
10
11
  }
11
- const toHtmlTree = remark().use(remarkGfm).use(remarkBreaks).use(remarkRehype, { allowDangerousHtml: true }).use(rehypeRaw);
12
12
  const NOT_PROSE = /* @__PURE__ */ new Set(["pre", "img"]);
13
13
  const TABLE_SECTIONS = /* @__PURE__ */ new Set(["thead", "tbody", "tfoot"]);
14
+ function htmlTree(markdown) {
15
+ const mdast = fromMarkdown(markdown, { extensions: [gfm()], mdastExtensions: [gfmFromMarkdown()] });
16
+ newlineToBreak(mdast);
17
+ return raw(toHast(mdast, { allowDangerousHtml: true }));
18
+ }
14
19
  function proseTree(markdown) {
15
- const tree = toHtmlTree.runSync(toHtmlTree.parse(markdown));
20
+ const tree = htmlTree(markdown);
16
21
  visit(tree, "element", (node, index, parent) => {
17
22
  if (NOT_PROSE.has(node.tagName) && parent && index !== void 0) {
18
23
  parent.children.splice(index, 1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flamingo-stack/openframe-frontend-core",
3
- "version": "0.0.747",
3
+ "version": "0.0.748",
4
4
  "description": "Shared design system and components for all Flamingo platforms",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -480,10 +480,16 @@
480
480
  "framer-motion": "^12.23.12",
481
481
  "globals": "^16.4.0",
482
482
  "graphql": "^16.12.0",
483
+ "hast-util-raw": "^9.1.0",
483
484
  "hast-util-to-text": "^4.0.2",
484
485
  "libphonenumber-js": "^1.12.40",
485
486
  "lucide-react": "^0.454.0",
487
+ "mdast-util-from-markdown": "^2.0.2",
488
+ "mdast-util-gfm": "^3.1.0",
489
+ "mdast-util-newline-to-break": "^2.0.0",
490
+ "mdast-util-to-hast": "^13.2.1",
486
491
  "mermaid": "^11.14.0",
492
+ "micromark-extension-gfm": "^3.0.0",
487
493
  "nats.ws": "^1.30.3",
488
494
  "next-themes": "^0.2.1",
489
495
  "prettier-plugin-tailwindcss": "^0.8.1",
@@ -505,7 +511,6 @@
505
511
  "remark": "^15.0.1",
506
512
  "remark-breaks": "^4.0.0",
507
513
  "remark-gfm": "^4.0.1",
508
- "remark-rehype": "^11.1.2",
509
514
  "sonner": "^1.2.4",
510
515
  "tailwind-merge": "^3.4.0",
511
516
  "tailwindcss-animate": "^1.0.7",