@nswds/app 1.61.0 → 1.61.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/dist/index.cjs +236 -449
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +114 -126
- package/dist/index.d.ts +114 -126
- package/dist/index.js +237 -443
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -13,20 +13,12 @@ import { RiArrowLeftSLine, RiArrowRightSLine } from '@remixicon/react';
|
|
|
13
13
|
import * as RechartsPrimitive from 'recharts';
|
|
14
14
|
import { ResponsiveContainer, AreaChart as AreaChart$1, CartesianGrid, XAxis, Label, YAxis, Tooltip, Legend as Legend$1, Area, Dot, Line, BarChart as BarChart$1, Bar, ComposedChart, PieChart, Pie, LineChart as LineChart$1, Sector } from 'recharts';
|
|
15
15
|
import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
|
|
16
|
-
import { createClient } from '@libsql/client';
|
|
17
|
-
import { drizzle } from 'drizzle-orm/libsql';
|
|
18
|
-
import { sqliteTable, text, integer, primaryKey } from 'drizzle-orm/sqlite-core';
|
|
19
|
-
import { DrizzleAdapter } from '@auth/drizzle-adapter';
|
|
20
|
-
import { and, eq } from 'drizzle-orm';
|
|
21
|
-
import NextAuth from 'next-auth';
|
|
22
|
-
import MicrosoftEntraID from 'next-auth/providers/microsoft-entra-id';
|
|
23
16
|
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
24
|
-
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
25
|
-
import { DropdownMenuTrigger as DropdownMenuTrigger$1 } from '@radix-ui/react-dropdown-menu';
|
|
26
|
-
import { useSession } from 'next-auth/react';
|
|
27
17
|
import * as culori from 'culori';
|
|
28
18
|
import { Slot } from '@radix-ui/react-slot';
|
|
29
19
|
import { usePathname, useRouter, useSearchParams } from 'next/navigation';
|
|
20
|
+
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
21
|
+
import { DropdownMenuTrigger as DropdownMenuTrigger$1 } from '@radix-ui/react-dropdown-menu';
|
|
30
22
|
import { getDefaultClassNames, DayPicker } from 'react-day-picker';
|
|
31
23
|
import useEmblaCarousel from 'embla-carousel-react';
|
|
32
24
|
import { ArrowLeft, ArrowRight, CircleIcon, MinusIcon, Layers, Hash } from 'lucide-react';
|
|
@@ -71,17 +63,12 @@ import { slugifyWithCounter } from '@sindresorhus/slugify';
|
|
|
71
63
|
import { create } from 'zustand';
|
|
72
64
|
import { persist, createJSONStorage } from 'zustand/middleware';
|
|
73
65
|
|
|
74
|
-
var __defProp = Object.defineProperty;
|
|
75
66
|
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
76
67
|
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
77
68
|
}) : x)(function(x) {
|
|
78
69
|
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
79
70
|
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
80
71
|
});
|
|
81
|
-
var __export = (target, all) => {
|
|
82
|
-
for (var name in all)
|
|
83
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
84
|
-
};
|
|
85
72
|
var Icons = {
|
|
86
73
|
account_circle: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", "data-slot": "icon", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx("path", { d: "M234-276q51-39 114-61.5T480-360q69 0 132 22.5T726-276q35-41 54.5-93T800-480q0-133-93.5-226.5T480-800q-133 0-226.5 93.5T160-480q0 59 19.5 111t54.5 93Zm246-164q-59 0-99.5-40.5T340-580q0-59 40.5-99.5T480-720q59 0 99.5 40.5T620-580q0 59-40.5 99.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q53 0 100-15.5t86-44.5q-39-29-86-44.5T480-280q-53 0-100 15.5T294-220q39 29 86 44.5T480-160Zm0-360q26 0 43-17t17-43q0-26-17-43t-43-17q-26 0-43 17t-17 43q0 26 17 43t43 17Zm0-60Zm0 360Z" }) }),
|
|
87
74
|
add_circle: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", "data-slot": "icon", viewBox: "0 -960 960 960", ...props, children: /* @__PURE__ */ jsx("path", { d: "M440-440v120q0 17 11.5 28.5T480-280q17 0 28.5-11.5T520-320v-120h120q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H520v-120q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640v120H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440h120Zm40 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" }) }),
|
|
@@ -207,11 +194,11 @@ var Icons = {
|
|
|
207
194
|
function cn(...inputs) {
|
|
208
195
|
return twMerge(clsx(inputs));
|
|
209
196
|
}
|
|
210
|
-
function truncate(
|
|
211
|
-
if (
|
|
212
|
-
return
|
|
197
|
+
function truncate(text, maxLength) {
|
|
198
|
+
if (text.length <= maxLength) {
|
|
199
|
+
return text;
|
|
213
200
|
}
|
|
214
|
-
return
|
|
201
|
+
return text.slice(0, maxLength) + "...";
|
|
215
202
|
}
|
|
216
203
|
function kebabCase(str) {
|
|
217
204
|
return str.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[\s_]+/g, "-").toLowerCase();
|
|
@@ -1622,162 +1609,8 @@ AreaChart.displayName = "AreaChart";
|
|
|
1622
1609
|
function AspectRatio({ ...props }) {
|
|
1623
1610
|
return /* @__PURE__ */ jsx(AspectRatioPrimitive.Root, { "data-slot": "aspect-ratio", ...props });
|
|
1624
1611
|
}
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
var accounts_exports = {};
|
|
1628
|
-
__export(accounts_exports, {
|
|
1629
|
-
accounts: () => accounts
|
|
1630
|
-
});
|
|
1631
|
-
|
|
1632
|
-
// src/db/schema/users.ts
|
|
1633
|
-
var users_exports = {};
|
|
1634
|
-
__export(users_exports, {
|
|
1635
|
-
users: () => users
|
|
1636
|
-
});
|
|
1637
|
-
var users = sqliteTable("user", {
|
|
1638
|
-
id: text("id").primaryKey().$defaultFn(() => crypto.randomUUID()),
|
|
1639
|
-
name: text("name"),
|
|
1640
|
-
email: text("email").unique(),
|
|
1641
|
-
emailVerified: integer("emailVerified", { mode: "timestamp_ms" }),
|
|
1642
|
-
image: text("image"),
|
|
1643
|
-
role: text("role", { enum: ["ADMIN", "USER"] }).default("USER")
|
|
1644
|
-
});
|
|
1645
|
-
|
|
1646
|
-
// src/db/schema/accounts.ts
|
|
1647
|
-
var accounts = sqliteTable(
|
|
1648
|
-
"account",
|
|
1649
|
-
{
|
|
1650
|
-
userId: text("userId").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
1651
|
-
type: text("type").$type().notNull(),
|
|
1652
|
-
provider: text("provider").notNull(),
|
|
1653
|
-
providerAccountId: text("providerAccountId").notNull(),
|
|
1654
|
-
refresh_token: text("refresh_token"),
|
|
1655
|
-
access_token: text("access_token"),
|
|
1656
|
-
expires_at: integer("expires_at"),
|
|
1657
|
-
token_type: text("token_type"),
|
|
1658
|
-
scope: text("scope"),
|
|
1659
|
-
id_token: text("id_token"),
|
|
1660
|
-
session_state: text("session_state")
|
|
1661
|
-
},
|
|
1662
|
-
(table) => [
|
|
1663
|
-
primaryKey({
|
|
1664
|
-
columns: [table.provider, table.providerAccountId],
|
|
1665
|
-
name: "accounts_pk"
|
|
1666
|
-
})
|
|
1667
|
-
]
|
|
1668
|
-
);
|
|
1669
|
-
|
|
1670
|
-
// src/db/schema/sessions.ts
|
|
1671
|
-
var sessions_exports = {};
|
|
1672
|
-
__export(sessions_exports, {
|
|
1673
|
-
sessions: () => sessions
|
|
1674
|
-
});
|
|
1675
|
-
var sessions = sqliteTable("session", {
|
|
1676
|
-
sessionToken: text("sessionToken").primaryKey(),
|
|
1677
|
-
userId: text("userId").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
1678
|
-
expires: integer("expires", { mode: "timestamp_ms" }).notNull()
|
|
1679
|
-
});
|
|
1680
|
-
|
|
1681
|
-
// src/db/index.ts
|
|
1682
|
-
var client = createClient({
|
|
1683
|
-
url: process.env.TURSO_DATABASE_URL,
|
|
1684
|
-
authToken: process.env.TURSO_AUTH_TOKEN
|
|
1685
|
-
});
|
|
1686
|
-
var db = drizzle(client, {
|
|
1687
|
-
schema: {
|
|
1688
|
-
...users_exports,
|
|
1689
|
-
...accounts_exports,
|
|
1690
|
-
...sessions_exports
|
|
1691
|
-
}
|
|
1692
|
-
});
|
|
1693
|
-
var { handlers, signIn, signOut, auth } = NextAuth({
|
|
1694
|
-
adapter: DrizzleAdapter(db),
|
|
1695
|
-
pages: {
|
|
1696
|
-
signIn: "/api/auth/signin-microsoft"
|
|
1697
|
-
},
|
|
1698
|
-
providers: [
|
|
1699
|
-
MicrosoftEntraID({
|
|
1700
|
-
clientId: process.env.AUTH_MICROSOFT_ENTRA_ID_ID,
|
|
1701
|
-
clientSecret: process.env.AUTH_MICROSOFT_ENTRA_ID_SECRET,
|
|
1702
|
-
issuer: process.env.AUTH_MICROSOFT_ENTRA_ID_ISSUER,
|
|
1703
|
-
authorization: {
|
|
1704
|
-
params: {
|
|
1705
|
-
scope: "openid profile email User.Read offline_access",
|
|
1706
|
-
tenant: process.env.AUTH_MICROSOFT_ENTRA_ID_TENANT_ID
|
|
1707
|
-
}
|
|
1708
|
-
}
|
|
1709
|
-
})
|
|
1710
|
-
],
|
|
1711
|
-
callbacks: {
|
|
1712
|
-
authorized: async ({ auth: auth2, request }) => {
|
|
1713
|
-
const nonPublicPaths = ["/tests", "/dashboard"];
|
|
1714
|
-
const path = request.nextUrl.pathname;
|
|
1715
|
-
const isNonPublic = nonPublicPaths.some((prefix) => path.startsWith(prefix));
|
|
1716
|
-
if (isNonPublic) {
|
|
1717
|
-
return !!auth2;
|
|
1718
|
-
}
|
|
1719
|
-
return true;
|
|
1720
|
-
},
|
|
1721
|
-
jwt({ token, user }) {
|
|
1722
|
-
if (user) {
|
|
1723
|
-
token.id = user.id;
|
|
1724
|
-
}
|
|
1725
|
-
return token;
|
|
1726
|
-
},
|
|
1727
|
-
async session({ session, user }) {
|
|
1728
|
-
session.user.id = user.id;
|
|
1729
|
-
const [microsoftAccount] = await db.select().from(accounts).where(and(eq(accounts.userId, user.id), eq(accounts.provider, "microsoft-entra-id"))).limit(1);
|
|
1730
|
-
if (microsoftAccount && microsoftAccount.expires_at && microsoftAccount.expires_at * 1e3 < Date.now()) {
|
|
1731
|
-
try {
|
|
1732
|
-
const tokenEndpoint = `https://login.microsoftonline.com/${process.env.AUTH_MICROSOFT_ENTRA_ID_TENANT_ID}/oauth2/v2.0/token`;
|
|
1733
|
-
const response = await fetch(tokenEndpoint, {
|
|
1734
|
-
method: "POST",
|
|
1735
|
-
headers: {
|
|
1736
|
-
"Content-Type": "application/x-www-form-urlencoded"
|
|
1737
|
-
},
|
|
1738
|
-
body: new URLSearchParams({
|
|
1739
|
-
client_id: process.env.AUTH_MICROSOFT_ENTRA_ID_ID,
|
|
1740
|
-
client_secret: process.env.AUTH_MICROSOFT_ENTRA_ID_SECRET,
|
|
1741
|
-
grant_type: "refresh_token",
|
|
1742
|
-
refresh_token: microsoftAccount.refresh_token,
|
|
1743
|
-
scope: "openid profile email offline_access"
|
|
1744
|
-
})
|
|
1745
|
-
});
|
|
1746
|
-
const tokensOrError = await response.json();
|
|
1747
|
-
if (!response.ok) throw tokensOrError;
|
|
1748
|
-
const newTokens = tokensOrError;
|
|
1749
|
-
await db.update(accounts).set({
|
|
1750
|
-
access_token: newTokens.access_token,
|
|
1751
|
-
expires_at: Math.floor(Date.now() / 1e3 + newTokens.expires_in),
|
|
1752
|
-
refresh_token: newTokens.refresh_token ?? microsoftAccount.refresh_token,
|
|
1753
|
-
id_token: newTokens.id_token ?? microsoftAccount.id_token
|
|
1754
|
-
}).where(
|
|
1755
|
-
and(
|
|
1756
|
-
eq(accounts.provider, "microsoft-entra-id"),
|
|
1757
|
-
eq(accounts.providerAccountId, microsoftAccount.providerAccountId)
|
|
1758
|
-
)
|
|
1759
|
-
);
|
|
1760
|
-
} catch (error) {
|
|
1761
|
-
console.error("Error refreshing access_token", error);
|
|
1762
|
-
session.error = "RefreshTokenError";
|
|
1763
|
-
}
|
|
1764
|
-
}
|
|
1765
|
-
return session;
|
|
1766
|
-
}
|
|
1767
|
-
}
|
|
1768
|
-
});
|
|
1769
|
-
|
|
1770
|
-
// src/actions/auth-actions.ts
|
|
1771
|
-
async function signInWithEntra(formData) {
|
|
1772
|
-
const redirect = formData.get("redirect")?.toString() || "/dashboard";
|
|
1773
|
-
await signIn("microsoft-entra-id", { redirectTo: redirect });
|
|
1774
|
-
}
|
|
1775
|
-
async function signInGeneric(formData) {
|
|
1776
|
-
const redirect = formData.get("redirect")?.toString() || "/dashboard";
|
|
1777
|
-
await signIn(void 0, { redirectTo: redirect });
|
|
1778
|
-
}
|
|
1779
|
-
async function signOutAction() {
|
|
1780
|
-
await signOut();
|
|
1612
|
+
function AuthLayout({ children }) {
|
|
1613
|
+
return /* @__PURE__ */ jsx("main", { className: "flex min-h-dvh flex-col p-2", children: /* @__PURE__ */ jsx("div", { className: "flex grow items-center justify-center p-6 lg:rounded-sm lg:bg-white lg:p-10 lg:shadow-xs lg:ring-1 lg:ring-grey-950/5 dark:lg:bg-grey-900 dark:lg:ring-white/10", children }) });
|
|
1781
1614
|
}
|
|
1782
1615
|
function Avatar({ className, ...props }) {
|
|
1783
1616
|
return /* @__PURE__ */ jsx(
|
|
@@ -1812,254 +1645,6 @@ function AvatarFallback({
|
|
|
1812
1645
|
}
|
|
1813
1646
|
);
|
|
1814
1647
|
}
|
|
1815
|
-
function DropdownMenu({ ...props }) {
|
|
1816
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
|
|
1817
|
-
}
|
|
1818
|
-
function DropdownMenuPortal({
|
|
1819
|
-
...props
|
|
1820
|
-
}) {
|
|
1821
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { "data-slot": "dropdown-menu-portal", ...props });
|
|
1822
|
-
}
|
|
1823
|
-
function DropdownMenuTrigger({
|
|
1824
|
-
...props
|
|
1825
|
-
}) {
|
|
1826
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Trigger, { "data-slot": "dropdown-menu-trigger", ...props });
|
|
1827
|
-
}
|
|
1828
|
-
function DropdownMenuContent({
|
|
1829
|
-
className,
|
|
1830
|
-
sideOffset = 4,
|
|
1831
|
-
...props
|
|
1832
|
-
}) {
|
|
1833
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
1834
|
-
DropdownMenuPrimitive.Content,
|
|
1835
|
-
{
|
|
1836
|
-
"data-slot": "dropdown-menu-content",
|
|
1837
|
-
sideOffset,
|
|
1838
|
-
className: cn(
|
|
1839
|
-
[
|
|
1840
|
-
// Base
|
|
1841
|
-
"z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-sm border bg-background p-1 text-foreground shadow-md",
|
|
1842
|
-
// Open
|
|
1843
|
-
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
1844
|
-
// Closed
|
|
1845
|
-
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
1846
|
-
// Side
|
|
1847
|
-
"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
1848
|
-
// Hover
|
|
1849
|
-
"",
|
|
1850
|
-
// Focus
|
|
1851
|
-
"",
|
|
1852
|
-
// Active
|
|
1853
|
-
""
|
|
1854
|
-
],
|
|
1855
|
-
className
|
|
1856
|
-
),
|
|
1857
|
-
...props
|
|
1858
|
-
}
|
|
1859
|
-
) });
|
|
1860
|
-
}
|
|
1861
|
-
function DropdownMenuGroup({ ...props }) {
|
|
1862
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Group, { "data-slot": "dropdown-menu-group", ...props });
|
|
1863
|
-
}
|
|
1864
|
-
function DropdownMenuItem({
|
|
1865
|
-
className,
|
|
1866
|
-
inset,
|
|
1867
|
-
variant = "default",
|
|
1868
|
-
...props
|
|
1869
|
-
}) {
|
|
1870
|
-
return /* @__PURE__ */ jsx(
|
|
1871
|
-
DropdownMenuPrimitive.Item,
|
|
1872
|
-
{
|
|
1873
|
-
"data-slot": "dropdown-menu-item",
|
|
1874
|
-
"data-inset": inset,
|
|
1875
|
-
"data-variant": variant,
|
|
1876
|
-
className: cn(
|
|
1877
|
-
[
|
|
1878
|
-
// Base
|
|
1879
|
-
""
|
|
1880
|
-
],
|
|
1881
|
-
"relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:!text-destructive",
|
|
1882
|
-
className
|
|
1883
|
-
),
|
|
1884
|
-
...props
|
|
1885
|
-
}
|
|
1886
|
-
);
|
|
1887
|
-
}
|
|
1888
|
-
function DropdownMenuCheckboxItem({
|
|
1889
|
-
className,
|
|
1890
|
-
children,
|
|
1891
|
-
checked,
|
|
1892
|
-
...props
|
|
1893
|
-
}) {
|
|
1894
|
-
return /* @__PURE__ */ jsxs(
|
|
1895
|
-
DropdownMenuPrimitive.CheckboxItem,
|
|
1896
|
-
{
|
|
1897
|
-
"data-slot": "dropdown-menu-checkbox-item",
|
|
1898
|
-
className: cn(
|
|
1899
|
-
[
|
|
1900
|
-
// Base
|
|
1901
|
-
""
|
|
1902
|
-
],
|
|
1903
|
-
"relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1904
|
-
className
|
|
1905
|
-
),
|
|
1906
|
-
checked,
|
|
1907
|
-
...props,
|
|
1908
|
-
children: [
|
|
1909
|
-
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Icons.check, { className: "size-4" }) }) }),
|
|
1910
|
-
children
|
|
1911
|
-
]
|
|
1912
|
-
}
|
|
1913
|
-
);
|
|
1914
|
-
}
|
|
1915
|
-
function DropdownMenuRadioGroup({
|
|
1916
|
-
...props
|
|
1917
|
-
}) {
|
|
1918
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.RadioGroup, { "data-slot": "dropdown-menu-radio-group", ...props });
|
|
1919
|
-
}
|
|
1920
|
-
function DropdownMenuRadioItem({
|
|
1921
|
-
className,
|
|
1922
|
-
children,
|
|
1923
|
-
...props
|
|
1924
|
-
}) {
|
|
1925
|
-
return /* @__PURE__ */ jsxs(
|
|
1926
|
-
DropdownMenuPrimitive.RadioItem,
|
|
1927
|
-
{
|
|
1928
|
-
"data-slot": "dropdown-menu-radio-item",
|
|
1929
|
-
className: cn(
|
|
1930
|
-
[
|
|
1931
|
-
// Base
|
|
1932
|
-
""
|
|
1933
|
-
],
|
|
1934
|
-
"relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1935
|
-
className
|
|
1936
|
-
),
|
|
1937
|
-
...props,
|
|
1938
|
-
children: [
|
|
1939
|
-
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Icons.circle, { className: "size-2 fill-current" }) }) }),
|
|
1940
|
-
children
|
|
1941
|
-
]
|
|
1942
|
-
}
|
|
1943
|
-
);
|
|
1944
|
-
}
|
|
1945
|
-
function DropdownMenuLabel({
|
|
1946
|
-
className,
|
|
1947
|
-
inset,
|
|
1948
|
-
...props
|
|
1949
|
-
}) {
|
|
1950
|
-
return /* @__PURE__ */ jsx(
|
|
1951
|
-
DropdownMenuPrimitive.Label,
|
|
1952
|
-
{
|
|
1953
|
-
"data-slot": "dropdown-menu-label",
|
|
1954
|
-
"data-inset": inset,
|
|
1955
|
-
className: cn("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
|
|
1956
|
-
...props
|
|
1957
|
-
}
|
|
1958
|
-
);
|
|
1959
|
-
}
|
|
1960
|
-
function DropdownMenuSeparator({
|
|
1961
|
-
className,
|
|
1962
|
-
...props
|
|
1963
|
-
}) {
|
|
1964
|
-
return /* @__PURE__ */ jsx(
|
|
1965
|
-
DropdownMenuPrimitive.Separator,
|
|
1966
|
-
{
|
|
1967
|
-
"data-slot": "dropdown-menu-separator",
|
|
1968
|
-
className: cn("-mx-1 my-1 h-px bg-border", className),
|
|
1969
|
-
...props
|
|
1970
|
-
}
|
|
1971
|
-
);
|
|
1972
|
-
}
|
|
1973
|
-
function DropdownMenuShortcut({ className, ...props }) {
|
|
1974
|
-
return /* @__PURE__ */ jsx(
|
|
1975
|
-
"span",
|
|
1976
|
-
{
|
|
1977
|
-
"data-slot": "dropdown-menu-shortcut",
|
|
1978
|
-
className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className),
|
|
1979
|
-
...props
|
|
1980
|
-
}
|
|
1981
|
-
);
|
|
1982
|
-
}
|
|
1983
|
-
function DropdownMenuSub({ ...props }) {
|
|
1984
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
|
|
1985
|
-
}
|
|
1986
|
-
function DropdownMenuSubTrigger({
|
|
1987
|
-
className,
|
|
1988
|
-
inset,
|
|
1989
|
-
children,
|
|
1990
|
-
...props
|
|
1991
|
-
}) {
|
|
1992
|
-
return /* @__PURE__ */ jsxs(
|
|
1993
|
-
DropdownMenuPrimitive.SubTrigger,
|
|
1994
|
-
{
|
|
1995
|
-
"data-slot": "dropdown-menu-sub-trigger",
|
|
1996
|
-
"data-inset": inset,
|
|
1997
|
-
className: cn(
|
|
1998
|
-
[
|
|
1999
|
-
// Base
|
|
2000
|
-
""
|
|
2001
|
-
],
|
|
2002
|
-
"flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[inset]:pl-8 data-[state=open]:bg-primary-800/10 data-[state=open]:text-accent-foreground",
|
|
2003
|
-
className
|
|
2004
|
-
),
|
|
2005
|
-
...props,
|
|
2006
|
-
children: [
|
|
2007
|
-
children,
|
|
2008
|
-
/* @__PURE__ */ jsx(Icons.chevron_right, { className: "ml-auto size-4" })
|
|
2009
|
-
]
|
|
2010
|
-
}
|
|
2011
|
-
);
|
|
2012
|
-
}
|
|
2013
|
-
function DropdownMenuSubContent({
|
|
2014
|
-
className,
|
|
2015
|
-
...props
|
|
2016
|
-
}) {
|
|
2017
|
-
return /* @__PURE__ */ jsx(
|
|
2018
|
-
DropdownMenuPrimitive.SubContent,
|
|
2019
|
-
{
|
|
2020
|
-
"data-slot": "dropdown-menu-sub-content",
|
|
2021
|
-
className: cn(
|
|
2022
|
-
[
|
|
2023
|
-
// Base
|
|
2024
|
-
""
|
|
2025
|
-
],
|
|
2026
|
-
"z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
2027
|
-
className
|
|
2028
|
-
),
|
|
2029
|
-
...props
|
|
2030
|
-
}
|
|
2031
|
-
);
|
|
2032
|
-
}
|
|
2033
|
-
function AuthButton({ user, children }) {
|
|
2034
|
-
if (!user) {
|
|
2035
|
-
return /* @__PURE__ */ jsx("form", { action: signInWithEntra, children: /* @__PURE__ */ jsx(Button2, { type: "submit", variant: "surface", color: "light", children: "Sign In" }) });
|
|
2036
|
-
}
|
|
2037
|
-
return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
|
|
2038
|
-
/* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button2, { variant: "surface", color: "light", className: "flex items-center gap-2", children: [
|
|
2039
|
-
/* @__PURE__ */ jsxs(Avatar, { className: "h-5 w-5", children: [
|
|
2040
|
-
user.image && /* @__PURE__ */ jsx(AvatarImage, { src: user.image, alt: user.name || "User" }),
|
|
2041
|
-
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-xs", children: user.name?.split(" ").map((n) => n[0]).join("") || "U" })
|
|
2042
|
-
] }),
|
|
2043
|
-
/* @__PURE__ */ jsx("div", { className: "flex flex-col items-start text-sm", children: /* @__PURE__ */ jsx("span", { className: "font-medium", children: user.name }) }),
|
|
2044
|
-
/* @__PURE__ */ jsx(Icons.chevron_down, { className: "h-4 w-4 opacity-70" })
|
|
2045
|
-
] }) }),
|
|
2046
|
-
/* @__PURE__ */ jsxs(DropdownMenuContent, { className: "w-56", align: "start", children: [
|
|
2047
|
-
children,
|
|
2048
|
-
/* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
|
|
2049
|
-
/* @__PURE__ */ jsx(DropdownMenuItem, { asChild: true, className: "cursor-pointer", children: /* @__PURE__ */ jsx("form", { action: signOutAction, className: "w-full", children: /* @__PURE__ */ jsxs("button", { type: "submit", className: "flex w-full cursor-pointer items-center", children: [
|
|
2050
|
-
/* @__PURE__ */ jsx(Icons.logout, { className: "mr-2 h-4 w-4" }),
|
|
2051
|
-
/* @__PURE__ */ jsx("span", { children: "Sign out" })
|
|
2052
|
-
] }) }) })
|
|
2053
|
-
] })
|
|
2054
|
-
] });
|
|
2055
|
-
}
|
|
2056
|
-
function AuthButtonWrapper() {
|
|
2057
|
-
const { data: session } = useSession();
|
|
2058
|
-
return /* @__PURE__ */ jsx(AuthButton, { user: session?.user });
|
|
2059
|
-
}
|
|
2060
|
-
function AuthLayout({ children }) {
|
|
2061
|
-
return /* @__PURE__ */ jsx("main", { className: "flex min-h-dvh flex-col p-2", children: /* @__PURE__ */ jsx("div", { className: "flex grow items-center justify-center p-6 lg:rounded-sm lg:bg-white lg:p-10 lg:shadow-xs lg:ring-1 lg:ring-grey-950/5 dark:lg:bg-grey-900 dark:lg:ring-white/10", children }) });
|
|
2062
|
-
}
|
|
2063
1648
|
var focusOutline = {
|
|
2064
1649
|
"primary/grey": [
|
|
2065
1650
|
// Base
|
|
@@ -3716,6 +3301,224 @@ function BreadcrumbEllipsis({ className, ...props }) {
|
|
|
3716
3301
|
}
|
|
3717
3302
|
);
|
|
3718
3303
|
}
|
|
3304
|
+
function DropdownMenu({ ...props }) {
|
|
3305
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
|
|
3306
|
+
}
|
|
3307
|
+
function DropdownMenuPortal({
|
|
3308
|
+
...props
|
|
3309
|
+
}) {
|
|
3310
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { "data-slot": "dropdown-menu-portal", ...props });
|
|
3311
|
+
}
|
|
3312
|
+
function DropdownMenuTrigger({
|
|
3313
|
+
...props
|
|
3314
|
+
}) {
|
|
3315
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Trigger, { "data-slot": "dropdown-menu-trigger", ...props });
|
|
3316
|
+
}
|
|
3317
|
+
function DropdownMenuContent({
|
|
3318
|
+
className,
|
|
3319
|
+
sideOffset = 4,
|
|
3320
|
+
...props
|
|
3321
|
+
}) {
|
|
3322
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
3323
|
+
DropdownMenuPrimitive.Content,
|
|
3324
|
+
{
|
|
3325
|
+
"data-slot": "dropdown-menu-content",
|
|
3326
|
+
sideOffset,
|
|
3327
|
+
className: cn(
|
|
3328
|
+
[
|
|
3329
|
+
// Base
|
|
3330
|
+
"z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-sm border bg-background p-1 text-foreground shadow-md",
|
|
3331
|
+
// Open
|
|
3332
|
+
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
3333
|
+
// Closed
|
|
3334
|
+
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
3335
|
+
// Side
|
|
3336
|
+
"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
3337
|
+
// Hover
|
|
3338
|
+
"",
|
|
3339
|
+
// Focus
|
|
3340
|
+
"",
|
|
3341
|
+
// Active
|
|
3342
|
+
""
|
|
3343
|
+
],
|
|
3344
|
+
className
|
|
3345
|
+
),
|
|
3346
|
+
...props
|
|
3347
|
+
}
|
|
3348
|
+
) });
|
|
3349
|
+
}
|
|
3350
|
+
function DropdownMenuGroup({ ...props }) {
|
|
3351
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Group, { "data-slot": "dropdown-menu-group", ...props });
|
|
3352
|
+
}
|
|
3353
|
+
function DropdownMenuItem({
|
|
3354
|
+
className,
|
|
3355
|
+
inset,
|
|
3356
|
+
variant = "default",
|
|
3357
|
+
...props
|
|
3358
|
+
}) {
|
|
3359
|
+
return /* @__PURE__ */ jsx(
|
|
3360
|
+
DropdownMenuPrimitive.Item,
|
|
3361
|
+
{
|
|
3362
|
+
"data-slot": "dropdown-menu-item",
|
|
3363
|
+
"data-inset": inset,
|
|
3364
|
+
"data-variant": variant,
|
|
3365
|
+
className: cn(
|
|
3366
|
+
[
|
|
3367
|
+
// Base
|
|
3368
|
+
""
|
|
3369
|
+
],
|
|
3370
|
+
"relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:!text-destructive",
|
|
3371
|
+
className
|
|
3372
|
+
),
|
|
3373
|
+
...props
|
|
3374
|
+
}
|
|
3375
|
+
);
|
|
3376
|
+
}
|
|
3377
|
+
function DropdownMenuCheckboxItem({
|
|
3378
|
+
className,
|
|
3379
|
+
children,
|
|
3380
|
+
checked,
|
|
3381
|
+
...props
|
|
3382
|
+
}) {
|
|
3383
|
+
return /* @__PURE__ */ jsxs(
|
|
3384
|
+
DropdownMenuPrimitive.CheckboxItem,
|
|
3385
|
+
{
|
|
3386
|
+
"data-slot": "dropdown-menu-checkbox-item",
|
|
3387
|
+
className: cn(
|
|
3388
|
+
[
|
|
3389
|
+
// Base
|
|
3390
|
+
""
|
|
3391
|
+
],
|
|
3392
|
+
"relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3393
|
+
className
|
|
3394
|
+
),
|
|
3395
|
+
checked,
|
|
3396
|
+
...props,
|
|
3397
|
+
children: [
|
|
3398
|
+
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Icons.check, { className: "size-4" }) }) }),
|
|
3399
|
+
children
|
|
3400
|
+
]
|
|
3401
|
+
}
|
|
3402
|
+
);
|
|
3403
|
+
}
|
|
3404
|
+
function DropdownMenuRadioGroup({
|
|
3405
|
+
...props
|
|
3406
|
+
}) {
|
|
3407
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.RadioGroup, { "data-slot": "dropdown-menu-radio-group", ...props });
|
|
3408
|
+
}
|
|
3409
|
+
function DropdownMenuRadioItem({
|
|
3410
|
+
className,
|
|
3411
|
+
children,
|
|
3412
|
+
...props
|
|
3413
|
+
}) {
|
|
3414
|
+
return /* @__PURE__ */ jsxs(
|
|
3415
|
+
DropdownMenuPrimitive.RadioItem,
|
|
3416
|
+
{
|
|
3417
|
+
"data-slot": "dropdown-menu-radio-item",
|
|
3418
|
+
className: cn(
|
|
3419
|
+
[
|
|
3420
|
+
// Base
|
|
3421
|
+
""
|
|
3422
|
+
],
|
|
3423
|
+
"relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3424
|
+
className
|
|
3425
|
+
),
|
|
3426
|
+
...props,
|
|
3427
|
+
children: [
|
|
3428
|
+
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Icons.circle, { className: "size-2 fill-current" }) }) }),
|
|
3429
|
+
children
|
|
3430
|
+
]
|
|
3431
|
+
}
|
|
3432
|
+
);
|
|
3433
|
+
}
|
|
3434
|
+
function DropdownMenuLabel({
|
|
3435
|
+
className,
|
|
3436
|
+
inset,
|
|
3437
|
+
...props
|
|
3438
|
+
}) {
|
|
3439
|
+
return /* @__PURE__ */ jsx(
|
|
3440
|
+
DropdownMenuPrimitive.Label,
|
|
3441
|
+
{
|
|
3442
|
+
"data-slot": "dropdown-menu-label",
|
|
3443
|
+
"data-inset": inset,
|
|
3444
|
+
className: cn("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
|
|
3445
|
+
...props
|
|
3446
|
+
}
|
|
3447
|
+
);
|
|
3448
|
+
}
|
|
3449
|
+
function DropdownMenuSeparator({
|
|
3450
|
+
className,
|
|
3451
|
+
...props
|
|
3452
|
+
}) {
|
|
3453
|
+
return /* @__PURE__ */ jsx(
|
|
3454
|
+
DropdownMenuPrimitive.Separator,
|
|
3455
|
+
{
|
|
3456
|
+
"data-slot": "dropdown-menu-separator",
|
|
3457
|
+
className: cn("-mx-1 my-1 h-px bg-border", className),
|
|
3458
|
+
...props
|
|
3459
|
+
}
|
|
3460
|
+
);
|
|
3461
|
+
}
|
|
3462
|
+
function DropdownMenuShortcut({ className, ...props }) {
|
|
3463
|
+
return /* @__PURE__ */ jsx(
|
|
3464
|
+
"span",
|
|
3465
|
+
{
|
|
3466
|
+
"data-slot": "dropdown-menu-shortcut",
|
|
3467
|
+
className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className),
|
|
3468
|
+
...props
|
|
3469
|
+
}
|
|
3470
|
+
);
|
|
3471
|
+
}
|
|
3472
|
+
function DropdownMenuSub({ ...props }) {
|
|
3473
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
|
|
3474
|
+
}
|
|
3475
|
+
function DropdownMenuSubTrigger({
|
|
3476
|
+
className,
|
|
3477
|
+
inset,
|
|
3478
|
+
children,
|
|
3479
|
+
...props
|
|
3480
|
+
}) {
|
|
3481
|
+
return /* @__PURE__ */ jsxs(
|
|
3482
|
+
DropdownMenuPrimitive.SubTrigger,
|
|
3483
|
+
{
|
|
3484
|
+
"data-slot": "dropdown-menu-sub-trigger",
|
|
3485
|
+
"data-inset": inset,
|
|
3486
|
+
className: cn(
|
|
3487
|
+
[
|
|
3488
|
+
// Base
|
|
3489
|
+
""
|
|
3490
|
+
],
|
|
3491
|
+
"flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-primary-800/10 focus:text-accent-foreground data-[inset]:pl-8 data-[state=open]:bg-primary-800/10 data-[state=open]:text-accent-foreground",
|
|
3492
|
+
className
|
|
3493
|
+
),
|
|
3494
|
+
...props,
|
|
3495
|
+
children: [
|
|
3496
|
+
children,
|
|
3497
|
+
/* @__PURE__ */ jsx(Icons.chevron_right, { className: "ml-auto size-4" })
|
|
3498
|
+
]
|
|
3499
|
+
}
|
|
3500
|
+
);
|
|
3501
|
+
}
|
|
3502
|
+
function DropdownMenuSubContent({
|
|
3503
|
+
className,
|
|
3504
|
+
...props
|
|
3505
|
+
}) {
|
|
3506
|
+
return /* @__PURE__ */ jsx(
|
|
3507
|
+
DropdownMenuPrimitive.SubContent,
|
|
3508
|
+
{
|
|
3509
|
+
"data-slot": "dropdown-menu-sub-content",
|
|
3510
|
+
className: cn(
|
|
3511
|
+
[
|
|
3512
|
+
// Base
|
|
3513
|
+
""
|
|
3514
|
+
],
|
|
3515
|
+
"z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
3516
|
+
className
|
|
3517
|
+
),
|
|
3518
|
+
...props
|
|
3519
|
+
}
|
|
3520
|
+
);
|
|
3521
|
+
}
|
|
3719
3522
|
function Breadcrumbs({
|
|
3720
3523
|
homeLabel = "Home",
|
|
3721
3524
|
pathLabels = {},
|
|
@@ -12125,7 +11928,7 @@ function FormatToggle({ format, setFormat }) {
|
|
|
12125
11928
|
|
|
12126
11929
|
// package.json
|
|
12127
11930
|
var package_default = {
|
|
12128
|
-
version: "1.
|
|
11931
|
+
version: "1.61.0"};
|
|
12129
11932
|
function Heading({
|
|
12130
11933
|
className,
|
|
12131
11934
|
trim = "normal",
|
|
@@ -18873,7 +18676,7 @@ function distance2D(a, b) {
|
|
|
18873
18676
|
|
|
18874
18677
|
// node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs
|
|
18875
18678
|
var PanSession = class {
|
|
18876
|
-
constructor(event,
|
|
18679
|
+
constructor(event, handlers, { transformPagePoint, contextWindow = window, dragSnapToOrigin = false, distanceThreshold = 3 } = {}) {
|
|
18877
18680
|
this.startEvent = null;
|
|
18878
18681
|
this.lastMoveEvent = null;
|
|
18879
18682
|
this.lastMoveEventInfo = null;
|
|
@@ -18918,7 +18721,7 @@ var PanSession = class {
|
|
|
18918
18721
|
if (!isPrimaryPointer(event))
|
|
18919
18722
|
return;
|
|
18920
18723
|
this.dragSnapToOrigin = dragSnapToOrigin;
|
|
18921
|
-
this.handlers =
|
|
18724
|
+
this.handlers = handlers;
|
|
18922
18725
|
this.transformPagePoint = transformPagePoint;
|
|
18923
18726
|
this.distanceThreshold = distanceThreshold;
|
|
18924
18727
|
this.contextWindow = contextWindow || window;
|
|
@@ -18927,12 +18730,12 @@ var PanSession = class {
|
|
|
18927
18730
|
const { point } = initialInfo;
|
|
18928
18731
|
const { timestamp } = frameData;
|
|
18929
18732
|
this.history = [{ ...point, timestamp }];
|
|
18930
|
-
const { onSessionStart } =
|
|
18733
|
+
const { onSessionStart } = handlers;
|
|
18931
18734
|
onSessionStart && onSessionStart(event, getPanInfo(initialInfo, this.history));
|
|
18932
18735
|
this.removeListeners = pipe(addPointerEvent(this.contextWindow, "pointermove", this.handlePointerMove), addPointerEvent(this.contextWindow, "pointerup", this.handlePointerUp), addPointerEvent(this.contextWindow, "pointercancel", this.handlePointerUp));
|
|
18933
18736
|
}
|
|
18934
|
-
updateHandlers(
|
|
18935
|
-
this.handlers =
|
|
18737
|
+
updateHandlers(handlers) {
|
|
18738
|
+
this.handlers = handlers;
|
|
18936
18739
|
}
|
|
18937
18740
|
end() {
|
|
18938
18741
|
this.removeListeners && this.removeListeners();
|
|
@@ -24798,15 +24601,6 @@ var Tracker = React5__default.forwardRef(
|
|
|
24798
24601
|
}
|
|
24799
24602
|
);
|
|
24800
24603
|
Tracker.displayName = "Tracker";
|
|
24801
|
-
function SignInButton() {
|
|
24802
|
-
return /* @__PURE__ */ jsx("form", { action: signInGeneric, children: /* @__PURE__ */ jsx(Button2, { type: "submit", variant: "outline", children: "Sign in" }) });
|
|
24803
|
-
}
|
|
24804
|
-
function SignInWithEntraButton() {
|
|
24805
|
-
return /* @__PURE__ */ jsx("form", { action: signInWithEntra, children: /* @__PURE__ */ jsx(Button2, { type: "submit", children: "Sign in with Entra" }) });
|
|
24806
|
-
}
|
|
24807
|
-
function SignOutButton() {
|
|
24808
|
-
return /* @__PURE__ */ jsx("form", { action: signOutAction, children: /* @__PURE__ */ jsx(Button2, { type: "submit", color: "danger", children: "Sign Out" }) });
|
|
24809
|
-
}
|
|
24810
24604
|
var useIsomorphicLayoutEffect2 = typeof window !== "undefined" ? useLayoutEffect : useEffect;
|
|
24811
24605
|
function useDisableToc() {
|
|
24812
24606
|
const { setToc } = useToc();
|
|
@@ -24823,15 +24617,15 @@ function useDisableToc() {
|
|
|
24823
24617
|
}, [setToc]);
|
|
24824
24618
|
}
|
|
24825
24619
|
function getNodeText(node) {
|
|
24826
|
-
let
|
|
24620
|
+
let text = "";
|
|
24827
24621
|
for (const child of node.children ?? []) {
|
|
24828
24622
|
if ("type" in child && child.type === "text") {
|
|
24829
|
-
|
|
24623
|
+
text += child.attributes?.content ?? "";
|
|
24830
24624
|
} else if (child instanceof HTMLElement) {
|
|
24831
|
-
|
|
24625
|
+
text += getNodeText(child);
|
|
24832
24626
|
}
|
|
24833
24627
|
}
|
|
24834
|
-
return
|
|
24628
|
+
return text;
|
|
24835
24629
|
}
|
|
24836
24630
|
function domToSimple(node) {
|
|
24837
24631
|
if (node.nodeType === Node.TEXT_NODE) {
|
|
@@ -24946,6 +24740,6 @@ var languages = [
|
|
|
24946
24740
|
"html"
|
|
24947
24741
|
];
|
|
24948
24742
|
|
|
24949
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AreaChart, AspectRatio,
|
|
24743
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AreaChart, AspectRatio, AuthLayout, AvailableChartColors, Avatar, AvatarFallback, AvatarImage, Badge, BadgeButton, BarChart, BarList, BaseColorSwatches, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Breadcrumbs, Button2 as Button, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, CategoryBar, ChartContainer, ChartLegend3 as ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip3 as ChartTooltip, ChartTooltipContent, Checkbox, CheckboxSmall, Code, CodeDemo, CodeHighlight, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, ColorCard, ColorSwatches, ColourScale, ComboChart, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DataTable, DataTableColumnHeader, DataTableFacetedFilter, DataTablePagination, DataTableToolbar, DataTableViewOptions, Description4 as Description, DescriptionDetails, DescriptionList, DescriptionTerm, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DonutChart, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DynamicFavicon, ErrorMessage, ExpandableSearch, ExpandableSearchField, Field2 as Field, FieldGroup, FieldLabel, Fieldset2 as Fieldset, Footer, FooterAcknowledgement, FooterLegalLinks, FooterSmallPrint, FooterSocialLink, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, FormatToggle, GenerateInterpolatedColors, Header2 as Header, Heading, HoverCard, HoverCardContent, HoverCardTrigger, Icons, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Label5 as Label, Legend6 as Legend, LineChart, Link, _List as List, Listbox2 as Listbox, ListboxDescription, ListboxLabel, ListboxOption2 as ListboxOption, Logo, MainNavigation, Masthead, MegaMenu, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MobileHeader, MobileSearch, MultiLevelPushMenu, Navbar, NavbarDivider, NavbarItem, NavbarLabel, NavbarSection, NavbarSpacer, Navigation, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, PageHeading, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PreWithCopy, PrevNextLinks, PrevNextLinksPageLink, Progress, ProgressBar, ProgressCircle, Prose, RadioGroup2 as RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator4 as Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarLink, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarNavigation, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, SiteSearch, Skeleton, Slider, Social, SparkAreaChart, SparkBarChart, SparkLineChart, Spinner, StepIndicator, StepNavigation, Strong, SubmitButton, Switch2 as Switch, SwitchField, SwitchGroup, TabNavigation, TabNavigationLink, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableOfContents, TableRow, Tabs2 as Tabs, TabsContent, TabsList, TabsTrigger, Text, TextLink, Textarea, ThemeColorPalette, ThemeProvider, ThemeSelector, ThemeSwitcher, Toaster, TocContext, TocProvider, Toggle, ToggleGroup, ToggleGroupItem, Tooltip5 as Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TopLevel, TouchTarget, Tracker, Tooltip3 as TremorTooltip, ViewToggle, Wrapper, aboriginal, addStartStopToColorArray, allPalettes, badgeVariants, brand, buttonVariants, camelCase, chartColors, cn, colorDataArray, colorThemes, colors, constructCategoryColors, createColorArray, createColorData, createFormStore, darkenColor, domToSimple, focusInput, focusRing, generateColorThemes, getColorClassName, getColorValue, getHeadings, getNodeText, getSurroundingColors, getYAxisDomain, hasErrorInput, hasOnlyOneValueForKey, humaniseVariant, interpolateColors, isLightColor, kebabCase, languages, lightenColor, navigationMenuTriggerStyle, oklchConverter, progressBarVariants, renderColorOutput, renderColorOutputToDTFM, semantic, shades, themeIndices, themeTokens, toggleVariants, truncate, useActiveSectionObserver, useDisableToc, useFormField, useIsMobile, useOnWindowResize, usePageHeadings, useSelectorHeight, useSidebar, useToc };
|
|
24950
24744
|
//# sourceMappingURL=index.js.map
|
|
24951
24745
|
//# sourceMappingURL=index.js.map
|