@eka-care/medassist-widget-embed 0.2.5 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/iframe.js CHANGED
@@ -102,10 +102,49 @@
102
102
  const WIDGET_CSS_URL = `${widgetAssetBaseUrl}medassist-widget.css`;
103
103
  let widgetScriptPromise = null;
104
104
  let widgetCssTextPromise = null;
105
+ // --- Start loading as early as possible (don't wait for DOMContentLoaded) ---
106
+ const urlParams = new URLSearchParams(typeof window !== "undefined" ? window.location.search : "");
107
+ const earlyAgentId = urlParams.get("agentId");
108
+ const earlyBaseUrl = urlParams.get("baseUrl") || "https://matrix.eka.care/reloaded";
109
+ if (typeof document !== "undefined" && document.head) {
110
+ try {
111
+ const assetOrigin = new URL(widgetAssetBaseUrl).origin;
112
+ const apiOrigin = new URL(earlyBaseUrl).origin;
113
+ const preconnectAsset = document.createElement("link");
114
+ preconnectAsset.rel = "preconnect";
115
+ preconnectAsset.href = assetOrigin;
116
+ preconnectAsset.crossOrigin = "anonymous";
117
+ document.head.appendChild(preconnectAsset);
118
+ if (assetOrigin !== apiOrigin) {
119
+ const preconnectApi = document.createElement("link");
120
+ preconnectApi.rel = "preconnect";
121
+ preconnectApi.href = apiOrigin;
122
+ preconnectApi.crossOrigin = "anonymous";
123
+ document.head.appendChild(preconnectApi);
124
+ }
125
+ const preloadScript = document.createElement("link");
126
+ preloadScript.rel = "preload";
127
+ preloadScript.as = "script";
128
+ preloadScript.href = WIDGET_JS_URL;
129
+ document.head.appendChild(preloadScript);
130
+ const preloadCss = document.createElement("link");
131
+ preloadCss.rel = "preload";
132
+ preloadCss.as = "style";
133
+ preloadCss.href = WIDGET_CSS_URL;
134
+ document.head.appendChild(preloadCss);
135
+ }
136
+ catch {
137
+ // ignore URL/preload errors
138
+ }
139
+ loadWidgetCss();
140
+ loadWidgetScript();
141
+ }
142
+ const agentConfigPromise = earlyAgentId && earlyBaseUrl
143
+ ? fetchAgentConfig(earlyBaseUrl, earlyAgentId)
144
+ : Promise.resolve(undefined);
105
145
  // Auto-initialize from URL parameters (no shadow DOM needed in iframe)
106
146
  const initializeFromUrlParams = async () => {
107
147
  var _a, _b, _c, _d, _e;
108
- const urlParams = new URLSearchParams(window.location.search);
109
148
  const agentId = urlParams.get("agentId");
110
149
  if (!agentId) {
111
150
  console.error("Agent ID is required in URL parameters");
@@ -128,24 +167,20 @@
128
167
  : undefined;
129
168
  const container = document.getElementById("root") || document.body;
130
169
  try {
131
- await Promise.all([loadWidgetCss(), loadWidgetScript()]);
170
+ const [, , agentConfig] = await Promise.all([
171
+ loadWidgetCss(),
172
+ loadWidgetScript(),
173
+ agentConfigPromise,
174
+ ]);
132
175
  if (!(window === null || window === void 0 ? void 0 : window.renderMedAssist) ||
133
176
  typeof (window === null || window === void 0 ? void 0 : window.renderMedAssist) !== "function") {
134
177
  throw new Error("renderMedAssist is not available on window");
135
178
  }
136
- // Fetch agent-config when baseUrl is available; 10s timeout aborts pending request
137
179
  let apiTheme;
138
- console.log("base url", baseUrl);
139
- if (baseUrl) {
140
- try {
141
- const agentConfig = await fetchAgentConfig(baseUrl, agentId);
142
- title = (_b = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.name) !== null && _b !== void 0 ? _b : title;
143
- iconUrl = (_d = (_c = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.theme) === null || _c === void 0 ? void 0 : _c.icon_img) !== null && _d !== void 0 ? _d : iconUrl;
144
- apiTheme = mapAgentConfigThemeToWidgetTheme((_e = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.theme) !== null && _e !== void 0 ? _e : undefined);
145
- }
146
- catch {
147
- // ignore; use URL params only
148
- }
180
+ if (agentConfig) {
181
+ title = (_b = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.name) !== null && _b !== void 0 ? _b : title;
182
+ iconUrl = (_d = (_c = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.theme) === null || _c === void 0 ? void 0 : _c.icon_img) !== null && _d !== void 0 ? _d : iconUrl;
183
+ apiTheme = mapAgentConfigThemeToWidgetTheme((_e = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.theme) !== null && _e !== void 0 ? _e : undefined);
149
184
  }
150
185
  const config = {
151
186
  title,
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@ declare const DEFAULT_WIDGET_ASSET_BASE: string;
6
6
  /** Theme from agent-config API (has mode; textColor derived: dark → black, light → white) */
7
7
  type AgentConfig = {
8
8
  name?: string;
9
+ allowed?: ("text" | "file" | "audio")[];
9
10
  theme?: {
10
11
  background?: string;
11
12
  background_img?: string;
@@ -22,6 +23,7 @@ type MedAssistInitConfig = {
22
23
  title?: string;
23
24
  iconUrl?: string;
24
25
  baseUrl?: string;
26
+ allowed?: ("text" | "file" | "audio")[];
25
27
  theme?: {
26
28
  background?: string;
27
29
  backgroundImage?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -43,7 +43,6 @@ function mapAgentConfigThemeToWidgetTheme(apiTheme) {
43
43
  }
44
44
  /** Fetch agent-config from API and return theme from response data */
45
45
  async function fetchAgentConfig(baseUrl, agentId) {
46
- var _a;
47
46
  const url = `${baseUrl.replace(/\/$/, "")}/med-assist/agent-config/${agentId}`;
48
47
  const res = await fetch(url, {
49
48
  headers: {
@@ -53,7 +52,7 @@ async function fetchAgentConfig(baseUrl, agentId) {
53
52
  if (!res.ok)
54
53
  return undefined;
55
54
  const json = await res.json();
56
- if ((json === null || json === void 0 ? void 0 : json.success) && ((_a = json === null || json === void 0 ? void 0 : json.data) === null || _a === void 0 ? void 0 : _a.theme))
55
+ if ((json === null || json === void 0 ? void 0 : json.success) && (json === null || json === void 0 ? void 0 : json.data))
57
56
  return json.data;
58
57
  return undefined;
59
58
  }
@@ -331,12 +330,14 @@ class MedAssistWidgetLoader extends HTMLElement {
331
330
  rootElement.classList.remove("hidden");
332
331
  // Fetch agent-config when baseUrl is available; derive theme (mode → textColor: dark→black, light→white)
333
332
  let apiTheme = undefined;
333
+ let allowed;
334
334
  if (apiBaseUrl) {
335
335
  try {
336
336
  const agentConfig = await fetchAgentConfig(apiBaseUrl, resolvedAgentId);
337
337
  title = (agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.name) || title;
338
338
  iconUrl = ((_c = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.theme) === null || _c === void 0 ? void 0 : _c.icon_img) || iconUrl;
339
339
  apiTheme = mapAgentConfigThemeToWidgetTheme((agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.theme) || undefined);
340
+ allowed = agentConfig === null || agentConfig === void 0 ? void 0 : agentConfig.allowed;
340
341
  }
341
342
  catch {
342
343
  // ignore; use attribute + init theme only
@@ -345,6 +346,7 @@ class MedAssistWidgetLoader extends HTMLElement {
345
346
  const widgetConfig = {
346
347
  title: initConfig.title || title,
347
348
  iconUrl: initConfig.iconUrl || iconUrl,
349
+ allowed: initConfig.allowed || allowed,
348
350
  environment,
349
351
  onClose: () => {
350
352
  if (customOnClose && typeof customOnClose === "function") {
@@ -832,10 +832,6 @@ body {
832
832
  margin-bottom: 0.75rem;
833
833
  }
834
834
 
835
- .mb-4 {
836
- margin-bottom: 1rem;
837
- }
838
-
839
835
  .ml-2 {
840
836
  margin-left: 0.5rem;
841
837
  }
@@ -1271,6 +1267,15 @@ body {
1271
1267
  gap: 0.75rem;
1272
1268
  }
1273
1269
 
1270
+ .gap-x-4 {
1271
+ -moz-column-gap: 1rem;
1272
+ column-gap: 1rem;
1273
+ }
1274
+
1275
+ .gap-y-1 {
1276
+ row-gap: 0.25rem;
1277
+ }
1278
+
1274
1279
  .space-x-3 > :not([hidden]) ~ :not([hidden]) {
1275
1280
  --tw-space-x-reverse: 0;
1276
1281
  margin-right: calc(0.75rem * var(--tw-space-x-reverse));
@@ -1406,10 +1411,6 @@ body {
1406
1411
  border-left-width: 1px;
1407
1412
  }
1408
1413
 
1409
- .border-l-4 {
1410
- border-left-width: 4px;
1411
- }
1412
-
1413
1414
  .border-t {
1414
1415
  border-top-width: 1px;
1415
1416
  }
@@ -1428,10 +1429,6 @@ body {
1428
1429
  border-color: var(--color-primary);
1429
1430
  }
1430
1431
 
1431
- .border-\[var\(--white-300\)\] {
1432
- border-color: var(--white-300);
1433
- }
1434
-
1435
1432
  .border-border {
1436
1433
  border-color: hsl(var(--border));
1437
1434
  }
@@ -1498,10 +1495,6 @@ body {
1498
1495
  border-color: rgb(226 232 240 / var(--tw-border-opacity));
1499
1496
  }
1500
1497
 
1501
- .border-l-\[var\(--accent-400\)\] {
1502
- border-left-color: var(--accent-400);
1503
- }
1504
-
1505
1498
  .border-l-transparent {
1506
1499
  border-left-color: transparent;
1507
1500
  }
@@ -1524,14 +1517,6 @@ body {
1524
1517
  background-color: opposite;
1525
1518
  }
1526
1519
 
1527
- .bg-\[var\(--accent-400\)\] {
1528
- background-color: var(--accent-400);
1529
- }
1530
-
1531
- .bg-\[var\(--base-900\)\] {
1532
- background-color: var(--base-900);
1533
- }
1534
-
1535
1520
  .bg-\[var\(--color-background-primary-subtle\)\] {
1536
1521
  background-color: var(--color-background-primary-subtle);
1537
1522
  }
@@ -1540,14 +1525,15 @@ body {
1540
1525
  background-color: var(--color-muted);
1541
1526
  }
1542
1527
 
1543
- .bg-accent\/10 {
1544
- background-color: hsl(var(--accent) / var(--opacity-10));
1545
- }
1546
-
1547
1528
  .bg-accent\/50 {
1548
1529
  background-color: hsl(var(--accent) / 0.5);
1549
1530
  }
1550
1531
 
1532
+ .bg-amber-100 {
1533
+ --tw-bg-opacity: 1;
1534
+ background-color: rgb(254 243 199 / var(--tw-bg-opacity));
1535
+ }
1536
+
1551
1537
  .bg-amber-500 {
1552
1538
  --tw-bg-opacity: 1;
1553
1539
  background-color: rgb(245 158 11 / var(--tw-bg-opacity));
@@ -1582,10 +1568,6 @@ body {
1582
1568
  background-color: rgb(209 250 229 / var(--tw-bg-opacity));
1583
1569
  }
1584
1570
 
1585
- .bg-emerald-900\/80 {
1586
- background-color: rgb(6 78 59 / 0.8);
1587
- }
1588
-
1589
1571
  .bg-foreground {
1590
1572
  background-color: hsl(var(--foreground));
1591
1573
  }
@@ -1622,10 +1604,19 @@ body {
1622
1604
  background-color: hsl(var(--primary));
1623
1605
  }
1624
1606
 
1607
+ .bg-primary\/15 {
1608
+ background-color: hsl(var(--primary) / 0.15);
1609
+ }
1610
+
1625
1611
  .bg-purple-100\/50 {
1626
1612
  background-color: rgb(243 232 255 / 0.5);
1627
1613
  }
1628
1614
 
1615
+ .bg-red-100 {
1616
+ --tw-bg-opacity: 1;
1617
+ background-color: rgb(254 226 226 / var(--tw-bg-opacity));
1618
+ }
1619
+
1629
1620
  .bg-red-500 {
1630
1621
  --tw-bg-opacity: 1;
1631
1622
  background-color: rgb(239 68 68 / var(--tw-bg-opacity));
@@ -1729,10 +1720,6 @@ body {
1729
1720
  padding: 0.25rem;
1730
1721
  }
1731
1722
 
1732
- .p-1\.5 {
1733
- padding: 0.375rem;
1734
- }
1735
-
1736
1723
  .p-2 {
1737
1724
  padding: 0.5rem;
1738
1725
  }
@@ -1741,10 +1728,6 @@ body {
1741
1728
  padding: 1rem;
1742
1729
  }
1743
1730
 
1744
- .p-5 {
1745
- padding: 1.25rem;
1746
- }
1747
-
1748
1731
  .p-6 {
1749
1732
  padding: 1.5rem;
1750
1733
  }
@@ -1907,6 +1890,10 @@ body {
1907
1890
  font-weight: 600;
1908
1891
  }
1909
1892
 
1893
+ .lowercase {
1894
+ text-transform: lowercase;
1895
+ }
1896
+
1910
1897
  .leading-4 {
1911
1898
  line-height: 1rem;
1912
1899
  }
@@ -1919,6 +1906,10 @@ body {
1919
1906
  line-height: 1;
1920
1907
  }
1921
1908
 
1909
+ .leading-snug {
1910
+ line-height: 1.375;
1911
+ }
1912
+
1922
1913
  .leading-tight {
1923
1914
  line-height: 1.25;
1924
1915
  }
@@ -1931,14 +1922,6 @@ body {
1931
1922
  letter-spacing: 0.025em;
1932
1923
  }
1933
1924
 
1934
- .text-\[var\(--accent-1000\)\] {
1935
- color: var(--accent-1000);
1936
- }
1937
-
1938
- .text-\[var\(--accent-300\)\] {
1939
- color: var(--accent-300);
1940
- }
1941
-
1942
1925
  .text-\[var\(--color-foreground\)\] {
1943
1926
  color: var(--color-foreground);
1944
1927
  }
@@ -1951,23 +1934,16 @@ body {
1951
1934
  color: var(--color-primary);
1952
1935
  }
1953
1936
 
1954
- .text-\[var\(--white-1000\)\] {
1955
- color: var(--white-1000);
1956
- }
1957
-
1958
- .text-\[var\(--white-600\)\] {
1959
- color: var(--white-600);
1960
- }
1961
-
1962
- .text-\[var\(--white-900\)\] {
1963
- color: var(--white-900);
1964
- }
1965
-
1966
1937
  .text-amber-600 {
1967
1938
  --tw-text-opacity: 1;
1968
1939
  color: rgb(217 119 6 / var(--tw-text-opacity));
1969
1940
  }
1970
1941
 
1942
+ .text-amber-800 {
1943
+ --tw-text-opacity: 1;
1944
+ color: rgb(146 64 14 / var(--tw-text-opacity));
1945
+ }
1946
+
1971
1947
  .text-blue-600 {
1972
1948
  --tw-text-opacity: 1;
1973
1949
  color: rgb(37 99 235 / var(--tw-text-opacity));
@@ -1985,11 +1961,6 @@ body {
1985
1961
  color: hsl(var(--destructive-foreground));
1986
1962
  }
1987
1963
 
1988
- .text-emerald-300 {
1989
- --tw-text-opacity: 1;
1990
- color: rgb(110 231 183 / var(--tw-text-opacity));
1991
- }
1992
-
1993
1964
  .text-emerald-800 {
1994
1965
  --tw-text-opacity: 1;
1995
1966
  color: rgb(6 95 70 / var(--tw-text-opacity));
@@ -2049,6 +2020,11 @@ body {
2049
2020
  color: rgb(220 38 38 / var(--tw-text-opacity));
2050
2021
  }
2051
2022
 
2023
+ .text-red-800 {
2024
+ --tw-text-opacity: 1;
2025
+ color: rgb(153 27 27 / var(--tw-text-opacity));
2026
+ }
2027
+
2052
2028
  .text-secondary-foreground {
2053
2029
  color: hsl(var(--secondary-foreground));
2054
2030
  }
@@ -2547,18 +2523,10 @@ body {
2547
2523
  border-color: hsl(var(--primary) / 0.9);
2548
2524
  }
2549
2525
 
2550
- .hover\:bg-\[var\(--accent-300\)\]:hover {
2551
- background-color: var(--accent-300);
2552
- }
2553
-
2554
2526
  .hover\:bg-\[var\(--color-muted-foreground\)\]:hover {
2555
2527
  background-color: var(--color-muted-foreground);
2556
2528
  }
2557
2529
 
2558
- .hover\:bg-\[var\(--white-100\)\]:hover {
2559
- background-color: var(--white-100);
2560
- }
2561
-
2562
2530
  .hover\:bg-accent:hover {
2563
2531
  background-color: hsl(var(--accent));
2564
2532
  }
@@ -2759,6 +2727,12 @@ body {
2759
2727
  opacity: 0.6;
2760
2728
  }
2761
2729
 
2730
+ .disabled\:hover\:scale-100:hover:disabled {
2731
+ --tw-scale-x: 1;
2732
+ --tw-scale-y: 1;
2733
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2734
+ }
2735
+
2762
2736
  .group:hover .group-hover\:bg-purple-200\/70 {
2763
2737
  background-color: rgb(233 213 255 / 0.7);
2764
2738
  }
@@ -2779,19 +2753,10 @@ body {
2779
2753
  color: hsl(var(--primary-foreground));
2780
2754
  }
2781
2755
 
2782
- .dark\:bg-emerald-900\/40:is(.dark *) {
2783
- background-color: rgb(6 78 59 / 0.4);
2784
- }
2785
-
2786
2756
  .dark\:bg-input\/30:is(.dark *) {
2787
2757
  background-color: hsl(var(--input) / 0.3);
2788
2758
  }
2789
2759
 
2790
- .dark\:text-emerald-300:is(.dark *) {
2791
- --tw-text-opacity: 1;
2792
- color: rgb(110 231 183 / var(--tw-text-opacity));
2793
- }
2794
-
2795
2760
  .dark\:hover\:bg-input\/50:hover:is(.dark *) {
2796
2761
  background-color: hsl(var(--input) / 0.5);
2797
2762
  }