@burdenoff/fe-libs 2026.527.3 → 2026.527.4
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/chrome/ContextSwitcher.js +90 -339
- package/dist/chrome/GlobalSearch.js +72 -456
- package/dist/chrome/NotificationCenter.js +69 -703
- package/dist/chrome/SideNavigation.js +73 -241
- package/dist/chrome/contextSwitcher/EmptyState.js +32 -0
- package/dist/chrome/contextSwitcher/OrganizationList.js +34 -0
- package/dist/chrome/contextSwitcher/ProjectList.js +34 -0
- package/dist/chrome/contextSwitcher/SearchInput.js +50 -0
- package/dist/chrome/contextSwitcher/TabButton.js +9 -0
- package/dist/chrome/contextSwitcher/TriggerButton.js +38 -0
- package/dist/chrome/contextSwitcher/WorkspaceList.js +34 -0
- package/dist/chrome/contextSwitcher/icons.js +58 -0
- package/dist/chrome/contextSwitcher/useIsMobile.js +11 -0
- package/dist/chrome/globalSearch/AdvancedFiltersPanel.js +253 -0
- package/dist/chrome/globalSearch/CategoryTabs.js +28 -0
- package/dist/chrome/globalSearch/ResultsList.js +58 -0
- package/dist/chrome/globalSearch/SearchInput.js +28 -0
- package/dist/chrome/globalSearch/SearchModeBar.js +36 -0
- package/dist/chrome/globalSearch/useAdvancedFilters.js +78 -0
- package/dist/chrome/globalSearch/utils.js +22 -0
- package/dist/chrome/notificationCenter/BellButton.js +27 -0
- package/dist/chrome/notificationCenter/NotificationCardItem.js +129 -0
- package/dist/chrome/notificationCenter/NotificationFilters.js +67 -0
- package/dist/chrome/notificationCenter/NotificationFooter.js +23 -0
- package/dist/chrome/notificationCenter/NotificationHeader.js +75 -0
- package/dist/chrome/notificationCenter/NotificationList.js +75 -0
- package/dist/chrome/notificationCenter/NotificationPanel.js +19 -0
- package/dist/chrome/notificationCenter/SkeletonCard.js +18 -0
- package/dist/chrome/notificationCenter/constants.js +93 -0
- package/dist/chrome/notificationCenter/gql.js +58 -0
- package/dist/chrome/notificationCenter/useNotificationCenter.js +149 -0
- package/dist/chrome/notificationCenter/usePanelChrome.js +36 -0
- package/dist/chrome/sideNavigation/CollapseToggle.js +29 -0
- package/dist/chrome/sideNavigation/MobileActionsBar.js +25 -0
- package/dist/chrome/sideNavigation/NavItemRenderer.js +79 -0
- package/dist/chrome/sideNavigation/SidebarHeader.js +29 -0
- package/dist/chrome/sideNavigation/helpers.js +19 -0
- package/dist/chrome/sideNavigation/useSideNavigationState.js +45 -0
- package/dist/shared/components/ContextConversationWidget.js +173 -767
- package/dist/shared/components/contextConversationWidget/Composer.js +66 -0
- package/dist/shared/components/contextConversationWidget/MessageItem.js +124 -0
- package/dist/shared/components/contextConversationWidget/MessageList.js +32 -0
- package/dist/shared/components/contextConversationWidget/NoWorkspaceCard.js +19 -0
- package/dist/shared/components/contextConversationWidget/PendingAttachmentsBar.js +28 -0
- package/dist/shared/components/contextConversationWidget/ReplyBanner.js +32 -0
- package/dist/shared/components/contextConversationWidget/WidgetHeader.js +70 -0
- package/dist/shared/components/contextConversationWidget/queries.js +197 -0
- package/dist/shared/components/contextConversationWidget/types.js +10 -0
- package/dist/shared/components/contextConversationWidget/useAttachmentUpload.js +57 -0
- package/dist/shared/components/contextConversationWidget/useConversationSubscriptions.js +26 -0
- package/dist/shared/components/contextConversationWidget/useMessageActions.js +34 -0
- package/dist/shared/components/contextConversationWidget/useSendMessage.js +45 -0
- package/dist/shared/components/contextConversationWidget/useWidgetMessages.js +44 -0
- package/dist/shared/components/contextConversationWidget/utils.js +56 -0
- package/dist/shared/pages/SearchPage.js +293 -1076
- package/dist/shared/pages/searchPage/ActiveFilterChips.js +176 -0
- package/dist/shared/pages/searchPage/FiltersPanel.js +329 -0
- package/dist/shared/pages/searchPage/ResultsList.js +119 -0
- package/dist/shared/pages/searchPage/ResultsStatus.js +32 -0
- package/dist/shared/pages/searchPage/SearchInput.js +31 -0
- package/dist/shared/pages/searchPage/SearchPagination.js +37 -0
- package/dist/shared/pages/searchPage/SearchToolbar.js +58 -0
- package/dist/shared/pages/searchPage/constants.js +155 -0
- package/dist/shared/pages/searchPage/utils.js +24 -0
- package/dist/shared/providers/shell/AuthProvider.js +130 -384
- package/dist/shared/providers/shell/authProvider/bridgeStateSync.js +34 -0
- package/dist/shared/providers/shell/authProvider/jwt.js +13 -0
- package/dist/shared/providers/shell/authProvider/ssoRelay.js +38 -0
- package/dist/shared/providers/shell/authProvider/useAuthActions.js +170 -0
- package/dist/shared/providers/shell/authProvider/useBridgeInitialization.js +86 -0
- package/dist/shared/providers/shell/authProvider/useRemoteSLO.js +32 -0
- package/dist/shared/providers/shell/authProvider/useStorageSync.js +35 -0
- package/dist/shared/providers/shell/authProvider/useTokenExpiryTimer.js +37 -0
- package/dist/shared/tours/TourTrigger.js +86 -262
- package/dist/shared/tours/ToursContext.js +108 -398
- package/dist/shared/tours/tourTrigger/DesktopTourDropdown.js +48 -0
- package/dist/shared/tours/tourTrigger/MobileTourSheet.js +68 -0
- package/dist/shared/tours/tourTrigger/TourListItemDesktop.js +36 -0
- package/dist/shared/tours/tourTrigger/TourListItemMobile.js +47 -0
- package/dist/shared/tours/tourTrigger/TourStatusChip.js +30 -0
- package/dist/shared/tours/tourTrigger/TourTriggerButton.js +22 -0
- package/dist/shared/tours/toursContext/errors.js +18 -0
- package/dist/shared/tours/toursContext/gql.js +152 -0
- package/dist/shared/tours/toursContext/route.js +20 -0
- package/dist/shared/tours/toursContext/session.js +19 -0
- package/dist/shared/tours/toursContext/useIdleReady.js +18 -0
- package/dist/shared/tours/toursContext/useTourMutations.js +118 -0
- package/dist/tag/TagsWidget.js +81 -226
- package/dist/tag/tagsWidget/AddTagTrigger.js +14 -0
- package/dist/tag/tagsWidget/TagBadgeList.js +17 -0
- package/dist/tag/tagsWidget/TagSearchPopover.js +80 -0
- package/dist/tag/tagsWidget/operations.js +64 -0
- package/dist/tag/tagsWidget/useVocabResolver.js +30 -0
- package/package.json +1 -1
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { X as e } from "lucide-react";
|
|
2
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
3
|
+
//#region src/shared/pages/searchPage/ActiveFilterChips.tsx
|
|
4
|
+
function r({ excludeIdsInput: r, selectedTypes: i, excludedTypes: a, selectedProducts: o, entityTypeOptions: s, availableProductOptions: c, createdBy: l, updatedBy: u, projectId: d, dateFrom: f, dateTo: p, updatedDateFrom: m, updatedDateTo: h, builtTagFilter: g, normalizedMetadataConditionsCount: _, normalizedExcludeIds: v, activeFilterCount: y, onExcludeIdsChange: b, onToggleEntityType: x, onToggleExcludedType: S, onToggleProductSource: C, onClearCreatedBy: w, onClearUpdatedBy: T, onClearProjectId: E, onClearCreatedDateRange: D, onClearUpdatedDateRange: O, onClearTagFilter: k, onClearMetadataConditions: A, onClearExcludeIds: j }) {
|
|
5
|
+
return /* @__PURE__ */ n("div", {
|
|
6
|
+
className: "xl:col-span-2",
|
|
7
|
+
children: [/* @__PURE__ */ t("h3", {
|
|
8
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
9
|
+
children: "Exclusions & Active Filters"
|
|
10
|
+
}), /* @__PURE__ */ n("div", {
|
|
11
|
+
className: "space-y-4",
|
|
12
|
+
children: [/* @__PURE__ */ n("div", { children: [/* @__PURE__ */ t("label", {
|
|
13
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
14
|
+
children: "Exclude entity IDs"
|
|
15
|
+
}), /* @__PURE__ */ t("input", {
|
|
16
|
+
"aria-label": "Exclude entity IDs filter",
|
|
17
|
+
type: "text",
|
|
18
|
+
value: r,
|
|
19
|
+
onChange: (e) => b(e.target.value),
|
|
20
|
+
placeholder: "Comma-separated entity IDs",
|
|
21
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
22
|
+
})] }), /* @__PURE__ */ n("div", {
|
|
23
|
+
className: "flex flex-wrap gap-2",
|
|
24
|
+
children: [
|
|
25
|
+
i.map((r) => /* @__PURE__ */ n("span", {
|
|
26
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
27
|
+
children: [s.find((e) => e.value === r)?.label || r, /* @__PURE__ */ t("button", {
|
|
28
|
+
type: "button",
|
|
29
|
+
onClick: () => x(r),
|
|
30
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
31
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
32
|
+
})]
|
|
33
|
+
}, `include-${r}`)),
|
|
34
|
+
a.map((r) => /* @__PURE__ */ n("span", {
|
|
35
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-bg-muted text-text-secondary rounded-full",
|
|
36
|
+
children: [
|
|
37
|
+
"Excluding ",
|
|
38
|
+
r,
|
|
39
|
+
/* @__PURE__ */ t("button", {
|
|
40
|
+
type: "button",
|
|
41
|
+
onClick: () => S(r),
|
|
42
|
+
className: "hover:bg-bg-canvas rounded-full p-0.5",
|
|
43
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
44
|
+
})
|
|
45
|
+
]
|
|
46
|
+
}, `exclude-chip-${r}`)),
|
|
47
|
+
o.map((r) => /* @__PURE__ */ n("span", {
|
|
48
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
49
|
+
children: [
|
|
50
|
+
"Product: ",
|
|
51
|
+
c.find((e) => e.value === r)?.label || r,
|
|
52
|
+
/* @__PURE__ */ t("button", {
|
|
53
|
+
type: "button",
|
|
54
|
+
onClick: () => C(r),
|
|
55
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
56
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
57
|
+
})
|
|
58
|
+
]
|
|
59
|
+
}, r)),
|
|
60
|
+
l && /* @__PURE__ */ n("span", {
|
|
61
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
62
|
+
children: [
|
|
63
|
+
"Created by: ",
|
|
64
|
+
l,
|
|
65
|
+
/* @__PURE__ */ t("button", {
|
|
66
|
+
type: "button",
|
|
67
|
+
onClick: w,
|
|
68
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
69
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
70
|
+
})
|
|
71
|
+
]
|
|
72
|
+
}),
|
|
73
|
+
u && /* @__PURE__ */ n("span", {
|
|
74
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
75
|
+
children: [
|
|
76
|
+
"Updated by: ",
|
|
77
|
+
u,
|
|
78
|
+
/* @__PURE__ */ t("button", {
|
|
79
|
+
type: "button",
|
|
80
|
+
onClick: T,
|
|
81
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
82
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
83
|
+
})
|
|
84
|
+
]
|
|
85
|
+
}),
|
|
86
|
+
d && /* @__PURE__ */ n("span", {
|
|
87
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
88
|
+
children: [
|
|
89
|
+
"Project: ",
|
|
90
|
+
d,
|
|
91
|
+
/* @__PURE__ */ t("button", {
|
|
92
|
+
type: "button",
|
|
93
|
+
onClick: E,
|
|
94
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
95
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
96
|
+
})
|
|
97
|
+
]
|
|
98
|
+
}),
|
|
99
|
+
(f || p) && /* @__PURE__ */ n("span", {
|
|
100
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
101
|
+
children: [
|
|
102
|
+
"Created: ",
|
|
103
|
+
f || "…",
|
|
104
|
+
" → ",
|
|
105
|
+
p || "…",
|
|
106
|
+
/* @__PURE__ */ t("button", {
|
|
107
|
+
type: "button",
|
|
108
|
+
onClick: D,
|
|
109
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
110
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
111
|
+
})
|
|
112
|
+
]
|
|
113
|
+
}),
|
|
114
|
+
(m || h) && /* @__PURE__ */ n("span", {
|
|
115
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
116
|
+
children: [
|
|
117
|
+
"Updated: ",
|
|
118
|
+
m || "…",
|
|
119
|
+
" → ",
|
|
120
|
+
h || "…",
|
|
121
|
+
/* @__PURE__ */ t("button", {
|
|
122
|
+
type: "button",
|
|
123
|
+
onClick: O,
|
|
124
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
125
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
126
|
+
})
|
|
127
|
+
]
|
|
128
|
+
}),
|
|
129
|
+
g && /* @__PURE__ */ n("span", {
|
|
130
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
131
|
+
children: ["Tag filter active", /* @__PURE__ */ t("button", {
|
|
132
|
+
type: "button",
|
|
133
|
+
onClick: k,
|
|
134
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
135
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
136
|
+
})]
|
|
137
|
+
}),
|
|
138
|
+
_ > 0 && /* @__PURE__ */ n("span", {
|
|
139
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-primary-default/10 text-primary-default rounded-full",
|
|
140
|
+
children: [
|
|
141
|
+
_,
|
|
142
|
+
" metadata condition",
|
|
143
|
+
_ > 1 ? "s" : "",
|
|
144
|
+
/* @__PURE__ */ t("button", {
|
|
145
|
+
type: "button",
|
|
146
|
+
onClick: A,
|
|
147
|
+
className: "hover:bg-primary-default/20 rounded-full p-0.5",
|
|
148
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
149
|
+
})
|
|
150
|
+
]
|
|
151
|
+
}),
|
|
152
|
+
v.length > 0 && /* @__PURE__ */ n("span", {
|
|
153
|
+
className: "inline-flex items-center gap-1 px-2 py-1 text-xs bg-bg-muted text-text-secondary rounded-full",
|
|
154
|
+
children: [
|
|
155
|
+
v.length,
|
|
156
|
+
" excluded ID",
|
|
157
|
+
v.length > 1 ? "s" : "",
|
|
158
|
+
/* @__PURE__ */ t("button", {
|
|
159
|
+
type: "button",
|
|
160
|
+
onClick: j,
|
|
161
|
+
className: "hover:bg-bg-canvas rounded-full p-0.5",
|
|
162
|
+
children: /* @__PURE__ */ t(e, { className: "size-3" })
|
|
163
|
+
})
|
|
164
|
+
]
|
|
165
|
+
}),
|
|
166
|
+
y === 0 && /* @__PURE__ */ t("span", {
|
|
167
|
+
className: "text-sm text-text-tertiary",
|
|
168
|
+
children: "No active filters"
|
|
169
|
+
})
|
|
170
|
+
]
|
|
171
|
+
})]
|
|
172
|
+
})]
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
//#endregion
|
|
176
|
+
export { r as ActiveFilterChips };
|
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
import { Plus as e, X as t } from "lucide-react";
|
|
2
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
3
|
+
//#region src/shared/pages/searchPage/FiltersPanel.tsx
|
|
4
|
+
function i({ entityTypeOptions: i, selectedTypes: a, excludedTypes: o, availableProductOptions: s, selectedProducts: c, facets: l, projectId: u, createdBy: d, updatedBy: f, dateFrom: p, dateTo: m, updatedDateFrom: h, updatedDateTo: g, tagIdsInput: _, tagKeysInput: v, tagPathsInput: y, tagVocabularyKeysInput: b, tagMatchAll: x, includeDescendants: S, tagDepth: C, metadataConditions: w, onToggleEntityType: T, onToggleExcludedType: E, onToggleProductSource: D, onProjectIdChange: O, onCreatedByChange: k, onUpdatedByChange: A, onDateFromChange: j, onDateToChange: M, onUpdatedDateFromChange: N, onUpdatedDateToChange: P, onTagIdsChange: F, onTagKeysChange: I, onTagPathsChange: L, onTagVocabularyKeysChange: R, onTagMatchAllChange: z, onIncludeDescendantsChange: B, onTagDepthChange: V, onAddMetadataCondition: H, onUpdateMetadataCondition: U, onRemoveMetadataCondition: W, children: G }) {
|
|
5
|
+
return /* @__PURE__ */ n("div", {
|
|
6
|
+
className: "mb-6 p-4 bg-bg-surface rounded-lg border border-border-default",
|
|
7
|
+
children: /* @__PURE__ */ r("div", {
|
|
8
|
+
className: "grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-6",
|
|
9
|
+
children: [
|
|
10
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
11
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
12
|
+
children: "Include Entity Types"
|
|
13
|
+
}), /* @__PURE__ */ n("div", {
|
|
14
|
+
className: "space-y-2 max-h-56 overflow-y-auto",
|
|
15
|
+
children: i.map((e) => /* @__PURE__ */ r("label", {
|
|
16
|
+
className: "flex items-center gap-2 cursor-pointer",
|
|
17
|
+
children: [/* @__PURE__ */ n("input", {
|
|
18
|
+
type: "checkbox",
|
|
19
|
+
checked: a.includes(e.value),
|
|
20
|
+
onChange: () => T(e.value),
|
|
21
|
+
className: "size-4 rounded border-border-default text-primary-default focus:ring-primary-default"
|
|
22
|
+
}), /* @__PURE__ */ n("span", {
|
|
23
|
+
className: "text-sm text-text-secondary",
|
|
24
|
+
children: e.label
|
|
25
|
+
})]
|
|
26
|
+
}, e.value))
|
|
27
|
+
})] }),
|
|
28
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
29
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
30
|
+
children: "Exclude Entity Types"
|
|
31
|
+
}), /* @__PURE__ */ n("div", {
|
|
32
|
+
className: "space-y-2 max-h-56 overflow-y-auto",
|
|
33
|
+
children: i.map((e) => /* @__PURE__ */ r("label", {
|
|
34
|
+
className: "flex items-center gap-2 cursor-pointer",
|
|
35
|
+
children: [/* @__PURE__ */ n("input", {
|
|
36
|
+
type: "checkbox",
|
|
37
|
+
checked: o.includes(e.value),
|
|
38
|
+
onChange: () => E(e.value),
|
|
39
|
+
className: "size-4 rounded border-border-default text-primary-default focus:ring-primary-default"
|
|
40
|
+
}), /* @__PURE__ */ n("span", {
|
|
41
|
+
className: "text-sm text-text-secondary",
|
|
42
|
+
children: e.label
|
|
43
|
+
})]
|
|
44
|
+
}, `exclude-${e.value}`))
|
|
45
|
+
})] }),
|
|
46
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
47
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
48
|
+
children: "Product Sources"
|
|
49
|
+
}), /* @__PURE__ */ n("div", {
|
|
50
|
+
className: "space-y-2 max-h-56 overflow-y-auto",
|
|
51
|
+
children: s.length > 0 ? s.map((e) => {
|
|
52
|
+
let t = l?.byProduct?.find((t) => t.product === e.value)?.count;
|
|
53
|
+
return /* @__PURE__ */ r("label", {
|
|
54
|
+
className: "flex items-center justify-between gap-2 cursor-pointer",
|
|
55
|
+
children: [/* @__PURE__ */ r("div", {
|
|
56
|
+
className: "flex items-center gap-2",
|
|
57
|
+
children: [/* @__PURE__ */ n("input", {
|
|
58
|
+
type: "checkbox",
|
|
59
|
+
checked: c.includes(e.value),
|
|
60
|
+
onChange: () => D(e.value),
|
|
61
|
+
className: "size-4 rounded border-border-default text-primary-default focus:ring-primary-default"
|
|
62
|
+
}), /* @__PURE__ */ n("span", {
|
|
63
|
+
className: "text-sm text-text-secondary",
|
|
64
|
+
children: e.label
|
|
65
|
+
})]
|
|
66
|
+
}), t !== void 0 && /* @__PURE__ */ n("span", {
|
|
67
|
+
className: "text-xs text-text-tertiary",
|
|
68
|
+
children: t
|
|
69
|
+
})]
|
|
70
|
+
}, e.value);
|
|
71
|
+
}) : /* @__PURE__ */ n("span", {
|
|
72
|
+
className: "text-sm text-text-tertiary",
|
|
73
|
+
children: "Product filters will appear after results are loaded."
|
|
74
|
+
})
|
|
75
|
+
})] }),
|
|
76
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
77
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
78
|
+
children: "Scope & Actors"
|
|
79
|
+
}), /* @__PURE__ */ r("div", {
|
|
80
|
+
className: "space-y-3",
|
|
81
|
+
children: [
|
|
82
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
83
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
84
|
+
children: "Project ID"
|
|
85
|
+
}), /* @__PURE__ */ n("input", {
|
|
86
|
+
"aria-label": "Project ID filter",
|
|
87
|
+
type: "text",
|
|
88
|
+
value: u,
|
|
89
|
+
onChange: (e) => O(e.target.value),
|
|
90
|
+
placeholder: "Optional project scope",
|
|
91
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
92
|
+
})] }),
|
|
93
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
94
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
95
|
+
children: "Created by"
|
|
96
|
+
}), /* @__PURE__ */ n("input", {
|
|
97
|
+
"aria-label": "Created by filter",
|
|
98
|
+
type: "text",
|
|
99
|
+
value: d,
|
|
100
|
+
onChange: (e) => k(e.target.value),
|
|
101
|
+
placeholder: "Actor ID",
|
|
102
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
103
|
+
})] }),
|
|
104
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
105
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
106
|
+
children: "Updated by"
|
|
107
|
+
}), /* @__PURE__ */ n("input", {
|
|
108
|
+
"aria-label": "Updated by filter",
|
|
109
|
+
type: "text",
|
|
110
|
+
value: f,
|
|
111
|
+
onChange: (e) => A(e.target.value),
|
|
112
|
+
placeholder: "Actor ID",
|
|
113
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
114
|
+
})] })
|
|
115
|
+
]
|
|
116
|
+
})] }),
|
|
117
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
118
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
119
|
+
children: "Created Date Range"
|
|
120
|
+
}), /* @__PURE__ */ r("div", {
|
|
121
|
+
className: "space-y-3",
|
|
122
|
+
children: [/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
123
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
124
|
+
children: "From"
|
|
125
|
+
}), /* @__PURE__ */ n("input", {
|
|
126
|
+
"aria-label": "Created from date",
|
|
127
|
+
type: "date",
|
|
128
|
+
value: p,
|
|
129
|
+
onChange: (e) => j(e.target.value),
|
|
130
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
131
|
+
})] }), /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
132
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
133
|
+
children: "To"
|
|
134
|
+
}), /* @__PURE__ */ n("input", {
|
|
135
|
+
"aria-label": "Created to date",
|
|
136
|
+
type: "date",
|
|
137
|
+
value: m,
|
|
138
|
+
onChange: (e) => M(e.target.value),
|
|
139
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
140
|
+
})] })]
|
|
141
|
+
})] }),
|
|
142
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
143
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
144
|
+
children: "Updated Date Range"
|
|
145
|
+
}), /* @__PURE__ */ r("div", {
|
|
146
|
+
className: "space-y-3",
|
|
147
|
+
children: [/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
148
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
149
|
+
children: "From"
|
|
150
|
+
}), /* @__PURE__ */ n("input", {
|
|
151
|
+
"aria-label": "Updated from date",
|
|
152
|
+
type: "date",
|
|
153
|
+
value: h,
|
|
154
|
+
onChange: (e) => N(e.target.value),
|
|
155
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
156
|
+
})] }), /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
157
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
158
|
+
children: "To"
|
|
159
|
+
}), /* @__PURE__ */ n("input", {
|
|
160
|
+
"aria-label": "Updated to date",
|
|
161
|
+
type: "date",
|
|
162
|
+
value: g,
|
|
163
|
+
onChange: (e) => P(e.target.value),
|
|
164
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
165
|
+
})] })]
|
|
166
|
+
})] }),
|
|
167
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h3", {
|
|
168
|
+
className: "text-sm font-medium text-text-primary mb-3",
|
|
169
|
+
children: "Tag Filters"
|
|
170
|
+
}), /* @__PURE__ */ r("div", {
|
|
171
|
+
className: "space-y-3",
|
|
172
|
+
children: [
|
|
173
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
174
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
175
|
+
children: "Tag IDs"
|
|
176
|
+
}), /* @__PURE__ */ n("input", {
|
|
177
|
+
"aria-label": "Tag IDs filter",
|
|
178
|
+
type: "text",
|
|
179
|
+
value: _,
|
|
180
|
+
onChange: (e) => F(e.target.value),
|
|
181
|
+
placeholder: "Comma-separated tag IDs",
|
|
182
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
183
|
+
})] }),
|
|
184
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
185
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
186
|
+
children: "Tag Keys"
|
|
187
|
+
}), /* @__PURE__ */ n("input", {
|
|
188
|
+
"aria-label": "Tag keys filter",
|
|
189
|
+
type: "text",
|
|
190
|
+
value: v,
|
|
191
|
+
onChange: (e) => I(e.target.value),
|
|
192
|
+
placeholder: "Comma-separated tag keys",
|
|
193
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
194
|
+
})] }),
|
|
195
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
196
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
197
|
+
children: "Hierarchy Paths"
|
|
198
|
+
}), /* @__PURE__ */ n("input", {
|
|
199
|
+
"aria-label": "Tag hierarchy paths filter",
|
|
200
|
+
type: "text",
|
|
201
|
+
value: y,
|
|
202
|
+
onChange: (e) => L(e.target.value),
|
|
203
|
+
placeholder: "team/engineering, finance/payables",
|
|
204
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
205
|
+
})] }),
|
|
206
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
207
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
208
|
+
children: "Vocabulary Keys"
|
|
209
|
+
}), /* @__PURE__ */ n("input", {
|
|
210
|
+
"aria-label": "Tag vocabulary keys filter",
|
|
211
|
+
type: "text",
|
|
212
|
+
value: b,
|
|
213
|
+
onChange: (e) => R(e.target.value),
|
|
214
|
+
placeholder: "project-tags, workspace-tags",
|
|
215
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
216
|
+
})] }),
|
|
217
|
+
/* @__PURE__ */ r("div", {
|
|
218
|
+
className: "grid grid-cols-2 gap-3",
|
|
219
|
+
children: [/* @__PURE__ */ r("label", {
|
|
220
|
+
className: "flex items-center gap-2 text-sm text-text-secondary cursor-pointer",
|
|
221
|
+
children: [/* @__PURE__ */ n("input", {
|
|
222
|
+
type: "checkbox",
|
|
223
|
+
checked: x,
|
|
224
|
+
onChange: (e) => z(e.target.checked),
|
|
225
|
+
className: "size-4 rounded border-border-default text-primary-default focus:ring-primary-default"
|
|
226
|
+
}), "Match all"]
|
|
227
|
+
}), /* @__PURE__ */ r("label", {
|
|
228
|
+
className: "flex items-center gap-2 text-sm text-text-secondary cursor-pointer",
|
|
229
|
+
children: [/* @__PURE__ */ n("input", {
|
|
230
|
+
type: "checkbox",
|
|
231
|
+
checked: S,
|
|
232
|
+
onChange: (e) => B(e.target.checked),
|
|
233
|
+
className: "size-4 rounded border-border-default text-primary-default focus:ring-primary-default"
|
|
234
|
+
}), "Include descendants"]
|
|
235
|
+
})]
|
|
236
|
+
}),
|
|
237
|
+
/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
|
|
238
|
+
className: "block text-xs text-text-tertiary mb-1",
|
|
239
|
+
children: "Tag depth"
|
|
240
|
+
}), /* @__PURE__ */ n("input", {
|
|
241
|
+
"aria-label": "Tag depth filter",
|
|
242
|
+
type: "number",
|
|
243
|
+
min: "1",
|
|
244
|
+
value: C,
|
|
245
|
+
onChange: (e) => V(e.target.value),
|
|
246
|
+
placeholder: "Optional depth limit",
|
|
247
|
+
className: "w-full h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
248
|
+
})] })
|
|
249
|
+
]
|
|
250
|
+
})] }),
|
|
251
|
+
/* @__PURE__ */ r("div", {
|
|
252
|
+
className: "xl:col-span-2",
|
|
253
|
+
children: [/* @__PURE__ */ r("div", {
|
|
254
|
+
className: "flex items-center justify-between mb-3",
|
|
255
|
+
children: [/* @__PURE__ */ n("h3", {
|
|
256
|
+
className: "text-sm font-medium text-text-primary",
|
|
257
|
+
children: "Metadata Conditions"
|
|
258
|
+
}), /* @__PURE__ */ r("button", {
|
|
259
|
+
type: "button",
|
|
260
|
+
onClick: H,
|
|
261
|
+
className: "inline-flex items-center gap-1 text-xs text-primary-default hover:text-primary-default/80",
|
|
262
|
+
children: [/* @__PURE__ */ n(e, { className: "size-3.5" }), "Add condition"]
|
|
263
|
+
})]
|
|
264
|
+
}), /* @__PURE__ */ n("div", {
|
|
265
|
+
className: "space-y-3",
|
|
266
|
+
children: w.length === 0 ? /* @__PURE__ */ n("span", {
|
|
267
|
+
className: "text-sm text-text-tertiary",
|
|
268
|
+
children: "No metadata conditions applied."
|
|
269
|
+
}) : w.map((e, i) => /* @__PURE__ */ r("div", {
|
|
270
|
+
className: "grid grid-cols-1 md:grid-cols-[1.4fr_auto_1.4fr_auto] gap-2 items-center",
|
|
271
|
+
children: [
|
|
272
|
+
/* @__PURE__ */ n("input", {
|
|
273
|
+
"aria-label": `Metadata key ${i + 1}`,
|
|
274
|
+
type: "text",
|
|
275
|
+
value: e.key,
|
|
276
|
+
onChange: (e) => U(i, { key: e.target.value }),
|
|
277
|
+
placeholder: "metadata.path",
|
|
278
|
+
className: "h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
279
|
+
}),
|
|
280
|
+
/* @__PURE__ */ r("select", {
|
|
281
|
+
"aria-label": `Metadata operator ${i + 1}`,
|
|
282
|
+
value: e.operator,
|
|
283
|
+
onChange: (e) => U(i, { operator: e.target.value }),
|
|
284
|
+
className: "h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default",
|
|
285
|
+
children: [
|
|
286
|
+
/* @__PURE__ */ n("option", {
|
|
287
|
+
value: "EQUALS",
|
|
288
|
+
children: "Equals"
|
|
289
|
+
}),
|
|
290
|
+
/* @__PURE__ */ n("option", {
|
|
291
|
+
value: "NOT_EQUALS",
|
|
292
|
+
children: "Not equals"
|
|
293
|
+
}),
|
|
294
|
+
/* @__PURE__ */ n("option", {
|
|
295
|
+
value: "CONTAINS",
|
|
296
|
+
children: "Contains"
|
|
297
|
+
}),
|
|
298
|
+
/* @__PURE__ */ n("option", {
|
|
299
|
+
value: "STARTS_WITH",
|
|
300
|
+
children: "Starts with"
|
|
301
|
+
})
|
|
302
|
+
]
|
|
303
|
+
}),
|
|
304
|
+
/* @__PURE__ */ n("input", {
|
|
305
|
+
"aria-label": `Metadata value ${i + 1}`,
|
|
306
|
+
type: "text",
|
|
307
|
+
value: e.value,
|
|
308
|
+
onChange: (e) => U(i, { value: e.target.value }),
|
|
309
|
+
placeholder: "Expected value",
|
|
310
|
+
className: "h-9 px-3 text-sm rounded-md border border-border-default bg-bg-canvas text-text-primary focus:outline-none focus:ring-2 focus:ring-primary-default"
|
|
311
|
+
}),
|
|
312
|
+
/* @__PURE__ */ n("button", {
|
|
313
|
+
type: "button",
|
|
314
|
+
onClick: () => W(i),
|
|
315
|
+
className: "inline-flex items-center justify-center size-9 rounded-md border border-border-default text-text-secondary hover:bg-bg-muted",
|
|
316
|
+
"aria-label": `Remove metadata condition ${i + 1}`,
|
|
317
|
+
children: /* @__PURE__ */ n(t, { className: "size-4" })
|
|
318
|
+
})
|
|
319
|
+
]
|
|
320
|
+
}, `metadata-condition-${i}`))
|
|
321
|
+
})]
|
|
322
|
+
}),
|
|
323
|
+
G
|
|
324
|
+
]
|
|
325
|
+
})
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
//#endregion
|
|
329
|
+
export { i as FiltersPanel };
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { Clock as e, Search as t } from "lucide-react";
|
|
2
|
+
import { Fragment as n, jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
3
|
+
//#region src/shared/pages/searchPage/ResultsList.tsx
|
|
4
|
+
function a({ isSearching: a, error: o, query: s, results: c, getEntityIcon: l, onResultClick: u }) {
|
|
5
|
+
return /* @__PURE__ */ i("div", {
|
|
6
|
+
className: "space-y-3",
|
|
7
|
+
children: [
|
|
8
|
+
a && c.length === 0 && /* @__PURE__ */ r(n, { children: [
|
|
9
|
+
1,
|
|
10
|
+
2,
|
|
11
|
+
3,
|
|
12
|
+
4,
|
|
13
|
+
5
|
|
14
|
+
].map((e) => /* @__PURE__ */ r("div", {
|
|
15
|
+
className: "p-4 bg-bg-surface rounded-lg border border-border-default animate-pulse",
|
|
16
|
+
children: /* @__PURE__ */ i("div", {
|
|
17
|
+
className: "flex items-start gap-3",
|
|
18
|
+
children: [/* @__PURE__ */ r("div", { className: "size-10 rounded-md bg-bg-muted" }), /* @__PURE__ */ i("div", {
|
|
19
|
+
className: "flex-1",
|
|
20
|
+
children: [/* @__PURE__ */ r("div", { className: "h-5 w-1/3 bg-bg-muted rounded mb-2" }), /* @__PURE__ */ r("div", { className: "h-4 w-2/3 bg-bg-muted rounded" })]
|
|
21
|
+
})]
|
|
22
|
+
})
|
|
23
|
+
}, e)) }),
|
|
24
|
+
!a && !o && c.length === 0 && s && /* @__PURE__ */ i("div", {
|
|
25
|
+
className: "py-12 text-center",
|
|
26
|
+
children: [
|
|
27
|
+
/* @__PURE__ */ r(t, { className: "size-12 mx-auto text-text-tertiary mb-4" }),
|
|
28
|
+
/* @__PURE__ */ r("h3", {
|
|
29
|
+
className: "text-lg font-medium text-text-primary mb-2",
|
|
30
|
+
children: "No results found"
|
|
31
|
+
}),
|
|
32
|
+
/* @__PURE__ */ i("p", {
|
|
33
|
+
className: "text-text-secondary max-w-md mx-auto",
|
|
34
|
+
children: [
|
|
35
|
+
"No results found for \"",
|
|
36
|
+
s,
|
|
37
|
+
"\". Try adjusting your search terms or filters."
|
|
38
|
+
]
|
|
39
|
+
}),
|
|
40
|
+
/* @__PURE__ */ i("div", {
|
|
41
|
+
className: "mt-6 space-y-2 text-sm text-text-tertiary",
|
|
42
|
+
children: [/* @__PURE__ */ r("p", { children: "Suggestions:" }), /* @__PURE__ */ i("ul", {
|
|
43
|
+
className: "list-disc list-inside",
|
|
44
|
+
children: [
|
|
45
|
+
/* @__PURE__ */ r("li", { children: "Check your spelling" }),
|
|
46
|
+
/* @__PURE__ */ r("li", { children: "Try more general keywords" }),
|
|
47
|
+
/* @__PURE__ */ r("li", { children: "Use fewer filters" }),
|
|
48
|
+
/* @__PURE__ */ r("li", { children: "Try \"Partial\" search mode for autocomplete" })
|
|
49
|
+
]
|
|
50
|
+
})]
|
|
51
|
+
})
|
|
52
|
+
]
|
|
53
|
+
}),
|
|
54
|
+
!a && !s && /* @__PURE__ */ i("div", {
|
|
55
|
+
className: "py-12 text-center",
|
|
56
|
+
children: [
|
|
57
|
+
/* @__PURE__ */ r(t, { className: "size-12 mx-auto text-text-tertiary mb-4" }),
|
|
58
|
+
/* @__PURE__ */ r("h3", {
|
|
59
|
+
className: "text-lg font-medium text-text-primary mb-2",
|
|
60
|
+
children: "Start searching"
|
|
61
|
+
}),
|
|
62
|
+
/* @__PURE__ */ r("p", {
|
|
63
|
+
className: "text-text-secondary max-w-md mx-auto",
|
|
64
|
+
children: "Enter a search term above to find documents, tags, projects, tasks, and more across your workspace."
|
|
65
|
+
})
|
|
66
|
+
]
|
|
67
|
+
}),
|
|
68
|
+
c.map((t) => /* @__PURE__ */ r("button", {
|
|
69
|
+
type: "button",
|
|
70
|
+
onClick: () => u(t),
|
|
71
|
+
className: "w-full p-4 bg-bg-surface rounded-lg border border-border-default hover:border-primary-default hover:shadow-sm transition-all text-left group",
|
|
72
|
+
children: /* @__PURE__ */ i("div", {
|
|
73
|
+
className: "flex items-start gap-3",
|
|
74
|
+
children: [/* @__PURE__ */ r("div", {
|
|
75
|
+
className: "flex-shrink-0 size-10 rounded-md bg-bg-muted flex items-center justify-center group-hover:bg-primary-default/10 transition-colors",
|
|
76
|
+
children: /* @__PURE__ */ r(l(t.entityType || t.category), { className: "size-5 text-text-tertiary group-hover:text-primary-default" })
|
|
77
|
+
}), /* @__PURE__ */ i("div", {
|
|
78
|
+
className: "flex-1 min-w-0",
|
|
79
|
+
children: [
|
|
80
|
+
/* @__PURE__ */ i("div", {
|
|
81
|
+
className: "flex items-center gap-2 mb-1",
|
|
82
|
+
children: [
|
|
83
|
+
/* @__PURE__ */ r("h3", {
|
|
84
|
+
className: "text-base font-medium text-text-primary truncate group-hover:text-primary-default",
|
|
85
|
+
children: t.title
|
|
86
|
+
}),
|
|
87
|
+
/* @__PURE__ */ r("span", {
|
|
88
|
+
className: "flex-shrink-0 px-2 py-0.5 text-xs font-medium bg-bg-muted text-text-tertiary rounded",
|
|
89
|
+
children: t.entityType || t.category
|
|
90
|
+
}),
|
|
91
|
+
t.productSource && /* @__PURE__ */ r("span", {
|
|
92
|
+
className: "flex-shrink-0 px-2 py-0.5 text-xs font-medium bg-bg-muted text-text-tertiary rounded",
|
|
93
|
+
children: t.productSource
|
|
94
|
+
})
|
|
95
|
+
]
|
|
96
|
+
}),
|
|
97
|
+
t.description && /* @__PURE__ */ r("p", {
|
|
98
|
+
className: "text-sm text-text-secondary line-clamp-2",
|
|
99
|
+
children: t.description
|
|
100
|
+
}),
|
|
101
|
+
/* @__PURE__ */ i("div", {
|
|
102
|
+
className: "flex items-center gap-4 mt-2 text-xs text-text-tertiary",
|
|
103
|
+
children: [t.score !== void 0 && t.score > 0 && /* @__PURE__ */ i("span", {
|
|
104
|
+
className: "flex items-center gap-1",
|
|
105
|
+
children: ["Score: ", t.score.toFixed(2)]
|
|
106
|
+
}), t.metadata?.createdAt && /* @__PURE__ */ i("span", {
|
|
107
|
+
className: "flex items-center gap-1",
|
|
108
|
+
children: [/* @__PURE__ */ r(e, { className: "size-3" }), new Date(String(t.metadata.createdAt)).toLocaleDateString()]
|
|
109
|
+
})]
|
|
110
|
+
})
|
|
111
|
+
]
|
|
112
|
+
})]
|
|
113
|
+
})
|
|
114
|
+
}, t.id))
|
|
115
|
+
]
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
//#endregion
|
|
119
|
+
export { a as ResultsList };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Loader2 as e } from "lucide-react";
|
|
2
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
3
|
+
//#region src/shared/pages/searchPage/ResultsStatus.tsx
|
|
4
|
+
function r({ isSearching: r, error: i, total: a, searchTimeMs: o }) {
|
|
5
|
+
return /* @__PURE__ */ t("div", {
|
|
6
|
+
className: "flex items-center justify-between mb-4",
|
|
7
|
+
children: /* @__PURE__ */ t("div", {
|
|
8
|
+
className: "text-sm text-text-secondary",
|
|
9
|
+
children: r ? /* @__PURE__ */ n("span", {
|
|
10
|
+
className: "flex items-center gap-2",
|
|
11
|
+
children: [/* @__PURE__ */ t(e, { className: "size-4 animate-spin" }), "Searching..."]
|
|
12
|
+
}) : i ? /* @__PURE__ */ t("span", {
|
|
13
|
+
className: "text-danger-default",
|
|
14
|
+
children: i
|
|
15
|
+
}) : /* @__PURE__ */ n("span", { children: [
|
|
16
|
+
"Found ",
|
|
17
|
+
/* @__PURE__ */ t("strong", { children: a }),
|
|
18
|
+
" results",
|
|
19
|
+
o > 0 && /* @__PURE__ */ n("span", {
|
|
20
|
+
className: "text-text-tertiary",
|
|
21
|
+
children: [
|
|
22
|
+
" in ",
|
|
23
|
+
o,
|
|
24
|
+
"ms"
|
|
25
|
+
]
|
|
26
|
+
})
|
|
27
|
+
] })
|
|
28
|
+
})
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { r as ResultsStatus };
|