@powerhousedao/network-admin 1.0.3 → 1.1.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/builders/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,6EAA6E;AAC7E,eAAO,MAAM,QAAQ,EAAE,YAOtB,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/builders/module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,6EAA6E;AAC7E,eAAO,MAAM,QAAQ,EAAE,YAOtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DriveExplorer.d.ts","sourceRoot":"","sources":["../../../../editors/network-admin/components/DriveExplorer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA0BlD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,2CA6ZtD"}
1
+ {"version":3,"file":"DriveExplorer.d.ts","sourceRoot":"","sources":["../../../../editors/network-admin/components/DriveExplorer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA2BlD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,2CAugBtD"}
@@ -6,6 +6,7 @@ import { CreateDocumentModal } from "@powerhousedao/design-system/connect";
6
6
  import {} from "document-model";
7
7
  import { WorkstreamIcon } from "./icons/WorkstreamIcon.js";
8
8
  import { editClientInfo, editWorkstream, } from "../../../document-models/workstream/gen/creators.js";
9
+ import { setProfileName } from "../../../document-models/network-profile/gen/creators.js";
9
10
  import { FolderTree } from "./FolderTree.js";
10
11
  /**
11
12
  * Main drive explorer component with sidebar navigation and content area.
@@ -18,6 +19,8 @@ export function DriveExplorer({ children }) {
18
19
  const [openModal, setOpenModal] = useState(false);
19
20
  const [selectedRootNode, setSelectedRootNode] = useState("workstreams");
20
21
  const [modalDocumentType, setModalDocumentType] = useState("powerhouse/workstream");
22
+ const [profileNameInput, setProfileNameInput] = useState("");
23
+ const [isCreatingProfile, setIsCreatingProfile] = useState(false);
21
24
  const selectedDocumentModel = useRef(null);
22
25
  // === STATE MANAGEMENT HOOKS ===
23
26
  // Core state hooks for drive navigation
@@ -62,20 +65,14 @@ export function DriveExplorer({ children }) {
62
65
  const networkProfileDoc = networkAdminDocuments?.find((doc) => doc.header.documentType === "powerhouse/network-profile");
63
66
  switch (nodeType) {
64
67
  case "workstreams":
65
- return (_jsx("div", { className: "w-full h-full p-6 overflow-auto", children: _jsxs("div", { className: "max-w-7xl mx-auto", children: [_jsxs("div", { className: "space-y-6 flex flex-col items-center justify-center mb-10", children: [_jsx("h1", { className: "text-2xl font-bold", children: "Welcome to the Network Admin" }), isNetworkProfileCreated &&
66
- networkProfileDoc?.state.global.logo && (_jsxs("div", { className: "bg-white rounded-lg shadow-md border border-gray-300 p-4 max-w-lg mx-auto text-sm", children: [_jsxs("div", { className: "flex items-start justify-between gap-4", children: [networkProfileDoc?.state.global.logo ? (_jsx("img", { src: networkProfileDoc?.state.global.logo, alt: "Network Profile Logo", className: "mb-4 max-w-64 max-h-12 w-auto h-auto object-contain flex-shrink-0" })) : (_jsx("div", {})), _jsx("div", { className: "flex flex-wrap gap-2 justify-end flex-shrink-0", children: networkProfileDoc?.state.global.category.map((category) => (_jsx("span", { className: `inline-flex items-center justify-center rounded-md w-fit whitespace-nowrap shrink-0 border-2 px-2 py-0 text-sm font-extrabold ${category.toLowerCase() === "oss"
68
+ return (_jsx("div", { className: "w-full h-full p-6 overflow-auto", children: _jsxs("div", { className: "max-w-7xl mx-auto", children: [_jsxs("div", { className: "space-y-6 flex flex-col items-center justify-center mb-10", children: [_jsx("h1", { className: "text-2xl font-bold", children: "Welcome to the Network Admin" }), networkProfileDoc?.state.global.logo && (_jsxs("div", { className: "bg-white rounded-lg shadow-md border border-gray-300 p-4 max-w-lg mx-auto text-sm", children: [_jsxs("div", { className: "flex items-start justify-between gap-4", children: [networkProfileDoc?.state.global.logo ? (_jsx("img", { src: networkProfileDoc?.state.global.logo, alt: "Network Profile Logo", className: "mb-4 max-w-64 max-h-12 w-auto h-auto object-contain flex-shrink-0" })) : (_jsx("div", {})), _jsx("div", { className: "flex flex-wrap gap-2 justify-end flex-shrink-0", children: networkProfileDoc?.state.global.category.map((category) => (_jsx("span", { className: `inline-flex items-center justify-center rounded-md w-fit whitespace-nowrap shrink-0 border-2 px-2 py-0 text-sm font-extrabold ${category.toLowerCase() === "oss"
67
69
  ? "bg-purple-600/30 text-purple-600 border-purple-600/70"
68
70
  : category.toLowerCase() === "defi"
69
71
  ? "bg-blue-600/30 text-blue-600 border-blue-600/70"
70
- : "bg-gray-500/30 text-gray-500 border-gray-500/70"}`, children: category }, category))) })] }), _jsx("p", { className: "mt-4", children: networkProfileDoc?.state.global.description })] })), _jsxs("div", { className: "flex flex-wrap gap-3 justify-center", children: [_jsx(Button, { color: "dark" // Customize button appearance
71
- , size: "sm", className: "cursor-pointer hover:bg-gray-600 hover:text-white", title: "Create Workstream Document", "aria-description": "Create Workstream Document", onClick: () => {
72
- setModalDocumentType("powerhouse/workstream");
73
- setOpenModal(true);
74
- }, disabled: !isNetworkProfileCreated, children: _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(WorkstreamIcon, { className: "w-7 h-7 text-white" }), "Create Workstream Document"] }) }), _jsx(Button, { color: "dark" // Customize button appearance
75
- , size: "sm", className: "cursor-pointer hover:bg-gray-600 hover:text-white", title: "Create Network Profile Document", "aria-description": "Create Network Profile Document", onClick: () => {
76
- setModalDocumentType("powerhouse/network-profile");
77
- setOpenModal(true);
78
- }, disabled: isNetworkProfileCreated, children: _jsx("span", { className: "flex items-center gap-2", children: "Create Network Profile Document" }) })] })] }), networkAdminDocuments && networkAdminDocuments.length > 0 && (_jsxs("div", { className: "w-full", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-gray-700", children: "\uD83D\uDCC4 Documents" }), _jsx("div", { className: "overflow-x-auto rounded-lg border border-gray-200 shadow-sm", children: _jsxs("table", { className: "w-full bg-white", children: [_jsx("thead", { className: "bg-gray-50", children: _jsxs("tr", { children: [_jsx("th", { className: "px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-1/4", children: "Name" }), _jsx("th", { className: "px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-1/4", children: "Type" }), _jsx("th", { className: "px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-1/4", children: "Actions" })] }) }), _jsx("tbody", { className: "bg-white divide-y divide-gray-200", children: networkAdminDocuments.map((document) => {
72
+ : "bg-gray-500/30 text-gray-500 border-gray-500/70"}`, children: category }, category))) })] }), _jsx("p", { className: "mt-4", children: networkProfileDoc?.state.global.description })] })), _jsx("div", { className: "flex flex-wrap gap-3 justify-center", children: _jsx(Button, { color: "dark", size: "sm", className: "cursor-pointer hover:bg-gray-600 hover:text-white", title: "Create Workstream Document", "aria-description": "Create Workstream Document", onClick: () => {
73
+ setModalDocumentType("powerhouse/workstream");
74
+ setOpenModal(true);
75
+ }, children: _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(WorkstreamIcon, { className: "w-7 h-7 text-white" }), "Create Workstream Document"] }) }) })] }), networkAdminDocuments && networkAdminDocuments.length > 0 && (_jsxs("div", { className: "w-full", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-gray-700", children: "Documents" }), _jsx("div", { className: "overflow-x-auto rounded-lg border border-gray-200 shadow-sm", children: _jsxs("table", { className: "w-full bg-white", children: [_jsx("thead", { className: "bg-gray-50", children: _jsxs("tr", { children: [_jsx("th", { className: "px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-1/4", children: "Name" }), _jsx("th", { className: "px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-1/4", children: "Type" }), _jsx("th", { className: "px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-1/4", children: "Actions" })] }) }), _jsx("tbody", { className: "bg-white divide-y divide-gray-200", children: networkAdminDocuments.map((document) => {
79
76
  // Find the corresponding file node for actions
80
77
  const fileNode = fileChildren?.find((file) => file.id === document.header.id);
81
78
  return (_jsxs("tr", { className: "hover:bg-gray-50 transition-colors", children: [_jsx("td", { className: "px-2 py-2", children: _jsx("div", { className: "text-sm font-medium text-gray-900 truncate max-w-xs", title: fileNode?.name || document.header.name, children: fileNode?.name || document.header.name }) }), _jsx("td", { className: "px-2 py-2", children: _jsx("div", { className: "text-sm text-gray-500 truncate max-w-xs", title: document.header.documentType, children: document.header.documentType }) }), _jsx("td", { className: "px-2 py-2", children: _jsxs("div", { className: "flex gap-2 flex-wrap", children: [_jsx("button", { onClick: () => {
@@ -176,7 +173,38 @@ export function DriveExplorer({ children }) {
176
173
  return null;
177
174
  }
178
175
  }, [selectedDrive?.header.id, allDocuments]);
176
+ // Handle network profile creation from welcome form
177
+ const handleCreateProfile = useCallback(async (e) => {
178
+ e.preventDefault();
179
+ const name = profileNameInput.trim();
180
+ if (!name || isCreatingProfile)
181
+ return;
182
+ setIsCreatingProfile(true);
183
+ try {
184
+ const node = await addDocument(selectedDrive?.header.id || "", name, "powerhouse/network-profile", undefined, undefined, undefined, "network-profile-editor");
185
+ if (!node?.id) {
186
+ console.error("Error creating network profile document");
187
+ return;
188
+ }
189
+ await dispatchActions([setProfileName({ name })], node.id);
190
+ setProfileNameInput("");
191
+ setSelectedRootNode("network-information");
192
+ }
193
+ catch (error) {
194
+ console.error("Failed to create network profile:", error);
195
+ }
196
+ finally {
197
+ setIsCreatingProfile(false);
198
+ }
199
+ }, [profileNameInput, isCreatingProfile, selectedDrive?.header.id]);
179
200
  // === RENDER ===
201
+ // If no network profile exists, show the creation form (no sidebar)
202
+ if (!isNetworkProfileCreated) {
203
+ const isValid = profileNameInput.trim().length > 0;
204
+ return (_jsx("div", { className: "flex h-full items-center justify-center px-4 py-12", children: _jsxs("div", { className: "relative w-full max-w-2xl overflow-hidden rounded-2xl border border-slate-200/50 bg-gradient-to-br from-slate-50 via-purple-50/30 to-indigo-50/40 p-12 shadow-xl shadow-slate-200/50 backdrop-blur-sm", children: [_jsx("div", { className: "absolute -right-20 -top-20 h-64 w-64 rounded-full bg-gradient-to-br from-purple-400/20 to-indigo-400/20 blur-3xl" }), _jsx("div", { className: "absolute -bottom-16 -left-16 h-48 w-48 rounded-full bg-gradient-to-br from-indigo-300/20 to-purple-300/20 blur-2xl" }), _jsxs("div", { className: "relative z-10 text-center", children: [_jsx("div", { className: "mb-6 inline-flex items-center justify-center rounded-full bg-gradient-to-r from-purple-600 to-indigo-600 p-3 shadow-lg shadow-purple-500/30", children: _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "32", height: "32", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, strokeLinecap: "round", strokeLinejoin: "round", className: "text-white", children: _jsx("path", { d: "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" }) }) }), _jsx("h2", { className: "mb-4 text-3xl font-bold tracking-tight text-slate-900", children: "Create your Network Profile" }), _jsx("p", { className: "mb-8 text-lg leading-relaxed text-slate-600", children: "Get started by creating a network profile to manage workstreams, builders, and documents." }), _jsxs("form", { onSubmit: handleCreateProfile, className: "mx-auto max-w-md", children: [_jsx("input", { type: "text", value: profileNameInput, onChange: (e) => setProfileNameInput(e.target.value), placeholder: "Network profile name", maxLength: 100, disabled: isCreatingProfile, className: "mb-6 w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-base text-slate-900 placeholder-slate-400 shadow-sm outline-none transition-all focus:border-purple-500 focus:ring-2 focus:ring-purple-500/20 disabled:opacity-50" }), _jsxs("button", { type: "submit", disabled: !isValid || isCreatingProfile, className: "group relative w-full overflow-hidden rounded-xl bg-gradient-to-r from-purple-600 to-indigo-600 px-8 py-4 text-base font-semibold text-white shadow-lg shadow-purple-500/40 transition-all duration-300 hover:scale-105 hover:shadow-xl hover:shadow-purple-500/50 active:scale-100 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:scale-100 disabled:hover:shadow-lg", children: [_jsxs("span", { className: "relative z-10 flex items-center justify-center gap-2", children: [_jsx("span", { children: isCreatingProfile
205
+ ? "Creating..."
206
+ : "Create Network Profile" }), !isCreatingProfile && (_jsx("svg", { className: "h-5 w-5 transition-transform duration-300 group-hover:translate-x-1", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", strokeWidth: 2, children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M13 7l5 5m0 0l-5 5m5-5H6" }) }))] }), _jsx("div", { className: "absolute inset-0 bg-gradient-to-r from-purple-700 to-indigo-700 opacity-0 transition-opacity duration-300 group-hover:opacity-100" })] })] })] })] }) }));
207
+ }
180
208
  return (_jsx("div", { className: "h-full", children: isScopeOfWorkFullView && children ? (_jsx("div", { className: "h-full w-full", children: children })) : (
181
209
  /* === NORMAL VIEW WITH SIDEBAR === */
182
210
  _jsxs("div", { className: "flex h-full", children: [_jsx(FolderTree, { activeSidebarNodeId: activeSidebarNodeId, setActiveSidebarNodeId: setActiveSidebarNodeId, setSelectedRootNode: setSelectedRootNode, createBuildersDocument: createBuildersDocument }), _jsx("div", { className: "flex-1 overflow-y-auto", children: _jsx("div", { className: "h-full", children: children ||
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/network-admin/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,mFAAmF;AACnF,eAAO,MAAM,YAAY,EAAE,YAO1B,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/network-admin/module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,mFAAmF;AACnF,eAAO,MAAM,YAAY,EAAE,YAO1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/network-profile/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,EAAE,YAOlC,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/network-profile/module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,EAAE,YAOlC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"milestones-section.d.ts","sourceRoot":"","sources":["../../../../editors/payment-terms/components/milestones-section.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,SAAS,EAET,kBAAkB,EACnB,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,KAAK,OAAO,IAAI,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtG,UAAU,sBAAsB;IAC9B,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,OAAO,EAAE,OAAO,mBAAmB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,GACT,EAAE,sBAAsB,2CA8WxB"}
1
+ {"version":3,"file":"milestones-section.d.ts","sourceRoot":"","sources":["../../../../editors/payment-terms/components/milestones-section.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,SAAS,EAET,kBAAkB,EACnB,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,KAAK,OAAO,IAAI,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtG,UAAU,sBAAsB;IAC9B,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,OAAO,EAAE,OAAO,mBAAmB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,GACT,EAAE,sBAAsB,2CA8WxB"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useMemo } from "react";
3
- import { Milestone as MilestoneIcon, Plus, } from "lucide-react";
3
+ import { Milestone as MilestoneIcon, Plus } from "lucide-react";
4
4
  import { ObjectSetTable, DatePicker, Checkbox, Select, } from "@powerhousedao/document-engineering";
5
5
  import { toast } from "@powerhousedao/design-system/connect";
6
6
  import { generateId } from "document-model/core";
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/payment-terms/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,uEAAuE;AACvE,eAAO,MAAM,kBAAkB,EAAE,YAOhC,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/payment-terms/module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,uEAAuE;AACvE,eAAO,MAAM,kBAAkB,EAAE,YAOhC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/request-for-proposals/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,wEAAwE;AACxE,eAAO,MAAM,yBAAyB,EAAE,YAOvC,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/request-for-proposals/module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,wEAAwE;AACxE,eAAO,MAAM,yBAAyB,EAAE,YAOvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/workstream/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,EAAE,YAO9B,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../editors/workstream/module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,EAAE,YAO9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../processors/workstreams/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,wBAAsB,EAAE,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB9D;AAED,wBAAsB,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../processors/workstreams/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,wBAAsB,EAAE,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B9D;AAED,wBAAsB,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE"}
package/dist/style.css CHANGED
@@ -47,14 +47,20 @@
47
47
  --color-blue-800: hsl(209 100% 55%);
48
48
  --color-indigo-50: oklch(96.2% 0.018 272.314);
49
49
  --color-indigo-100: oklch(93% 0.034 272.788);
50
+ --color-indigo-300: oklch(78.5% 0.115 274.713);
51
+ --color-indigo-400: oklch(67.3% 0.182 276.935);
50
52
  --color-indigo-500: oklch(58.5% 0.233 277.117);
51
53
  --color-indigo-600: oklch(51.1% 0.262 276.966);
52
54
  --color-indigo-700: oklch(45.7% 0.24 277.023);
53
55
  --color-violet-50: oklch(96.9% 0.016 293.756);
54
56
  --color-violet-500: oklch(60.6% 0.25 292.717);
55
57
  --color-violet-600: oklch(54.1% 0.281 293.009);
58
+ --color-purple-50: oklch(97.7% 0.014 308.299);
59
+ --color-purple-300: hsl(263 79% 85%);
60
+ --color-purple-400: hsl(264 77% 81%);
56
61
  --color-purple-500: hsl(264 77% 77%);
57
62
  --color-purple-600: hsl(263 76% 74%);
63
+ --color-purple-700: hsl(263 78% 70%);
58
64
  --color-pink-500: oklch(65.6% 0.241 354.308);
59
65
  --color-rose-50: oklch(96.9% 0.015 12.422);
60
66
  --color-rose-100: oklch(94.1% 0.03 12.58);
@@ -94,6 +100,7 @@
94
100
  --container-xs: 20rem;
95
101
  --container-md: 28rem;
96
102
  --container-lg: 32rem;
103
+ --container-2xl: 42rem;
97
104
  --container-4xl: 56rem;
98
105
  --container-7xl: 80rem;
99
106
  --text-xs: 0.75rem;
@@ -128,6 +135,8 @@
128
135
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
129
136
  --animate-spin: spin 1s linear infinite;
130
137
  --blur-sm: 8px;
138
+ --blur-2xl: 40px;
139
+ --blur-3xl: 64px;
131
140
  --default-transition-duration: 150ms;
132
141
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
133
142
  --default-font-family: var(--font-sans);
@@ -304,15 +313,27 @@
304
313
  .-top-3 {
305
314
  top: calc(var(--spacing) * -3);
306
315
  }
316
+ .-top-20 {
317
+ top: calc(var(--spacing) * -20);
318
+ }
307
319
  .top-full {
308
320
  top: 100%;
309
321
  }
310
322
  .-right-3 {
311
323
  right: calc(var(--spacing) * -3);
312
324
  }
325
+ .-right-20 {
326
+ right: calc(var(--spacing) * -20);
327
+ }
313
328
  .right-0 {
314
329
  right: calc(var(--spacing) * 0);
315
330
  }
331
+ .-bottom-16 {
332
+ bottom: calc(var(--spacing) * -16);
333
+ }
334
+ .-left-16 {
335
+ left: calc(var(--spacing) * -16);
336
+ }
316
337
  .z-10 {
317
338
  z-index: 10;
318
339
  }
@@ -376,6 +397,9 @@
376
397
  .mb-6 {
377
398
  margin-bottom: calc(var(--spacing) * 6);
378
399
  }
400
+ .mb-8 {
401
+ margin-bottom: calc(var(--spacing) * 8);
402
+ }
379
403
  .mb-10 {
380
404
  margin-bottom: calc(var(--spacing) * 10);
381
405
  }
@@ -436,6 +460,12 @@
436
460
  .h-12 {
437
461
  height: calc(var(--spacing) * 12);
438
462
  }
463
+ .h-48 {
464
+ height: calc(var(--spacing) * 48);
465
+ }
466
+ .h-64 {
467
+ height: calc(var(--spacing) * 64);
468
+ }
439
469
  .h-auto {
440
470
  height: auto;
441
471
  }
@@ -487,6 +517,12 @@
487
517
  .w-12 {
488
518
  width: calc(var(--spacing) * 12);
489
519
  }
520
+ .w-48 {
521
+ width: calc(var(--spacing) * 48);
522
+ }
523
+ .w-64 {
524
+ width: calc(var(--spacing) * 64);
525
+ }
490
526
  .w-\[115px\] {
491
527
  width: 115px;
492
528
  }
@@ -514,6 +550,9 @@
514
550
  .w-full {
515
551
  width: 100%;
516
552
  }
553
+ .max-w-2xl {
554
+ max-width: var(--container-2xl);
555
+ }
517
556
  .max-w-4xl {
518
557
  max-width: var(--container-4xl);
519
558
  }
@@ -532,6 +571,9 @@
532
571
  .max-w-lg {
533
572
  max-width: var(--container-lg);
534
573
  }
574
+ .max-w-md {
575
+ max-width: var(--container-md);
576
+ }
535
577
  .max-w-xs {
536
578
  max-width: var(--container-xs);
537
579
  }
@@ -721,6 +763,9 @@
721
763
  .rounded {
722
764
  border-radius: 0.25rem;
723
765
  }
766
+ .rounded-2xl {
767
+ border-radius: var(--radius-2xl);
768
+ }
724
769
  .rounded-full {
725
770
  border-radius: calc(infinity * 1px);
726
771
  }
@@ -808,6 +853,15 @@
808
853
  .border-rose-600 {
809
854
  border-color: var(--color-rose-600);
810
855
  }
856
+ .border-slate-200 {
857
+ border-color: var(--color-slate-200);
858
+ }
859
+ .border-slate-200\/50 {
860
+ border-color: color-mix(in srgb, hsl(210 9% 48%) 50%, transparent);
861
+ @supports (color: color-mix(in lab, red, red)) {
862
+ border-color: color-mix(in oklab, var(--color-slate-200) 50%, transparent);
863
+ }
864
+ }
811
865
  .border-transparent {
812
866
  border-color: transparent;
813
867
  }
@@ -929,6 +983,40 @@
929
983
  --tw-gradient-from: var(--color-emerald-600);
930
984
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
931
985
  }
986
+ .from-indigo-300\/20 {
987
+ --tw-gradient-from: color-mix(in srgb, oklch(78.5% 0.115 274.713) 20%, transparent);
988
+ @supports (color: color-mix(in lab, red, red)) {
989
+ --tw-gradient-from: color-mix(in oklab, var(--color-indigo-300) 20%, transparent);
990
+ }
991
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
992
+ }
993
+ .from-purple-400\/20 {
994
+ --tw-gradient-from: color-mix(in srgb, hsl(264 77% 81%) 20%, transparent);
995
+ @supports (color: color-mix(in lab, red, red)) {
996
+ --tw-gradient-from: color-mix(in oklab, var(--color-purple-400) 20%, transparent);
997
+ }
998
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
999
+ }
1000
+ .from-purple-600 {
1001
+ --tw-gradient-from: var(--color-purple-600);
1002
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1003
+ }
1004
+ .from-purple-700 {
1005
+ --tw-gradient-from: var(--color-purple-700);
1006
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1007
+ }
1008
+ .from-slate-50 {
1009
+ --tw-gradient-from: var(--color-slate-50);
1010
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1011
+ }
1012
+ .via-purple-50\/30 {
1013
+ --tw-gradient-via: color-mix(in srgb, oklch(97.7% 0.014 308.299) 30%, transparent);
1014
+ @supports (color: color-mix(in lab, red, red)) {
1015
+ --tw-gradient-via: color-mix(in oklab, var(--color-purple-50) 30%, transparent);
1016
+ }
1017
+ --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
1018
+ --tw-gradient-stops: var(--tw-gradient-via-stops);
1019
+ }
932
1020
  .to-blue-500 {
933
1021
  --tw-gradient-to: var(--color-blue-500);
934
1022
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
@@ -937,6 +1025,35 @@
937
1025
  --tw-gradient-to: var(--color-emerald-400);
938
1026
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
939
1027
  }
1028
+ .to-indigo-50\/40 {
1029
+ --tw-gradient-to: color-mix(in srgb, oklch(96.2% 0.018 272.314) 40%, transparent);
1030
+ @supports (color: color-mix(in lab, red, red)) {
1031
+ --tw-gradient-to: color-mix(in oklab, var(--color-indigo-50) 40%, transparent);
1032
+ }
1033
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1034
+ }
1035
+ .to-indigo-400\/20 {
1036
+ --tw-gradient-to: color-mix(in srgb, oklch(67.3% 0.182 276.935) 20%, transparent);
1037
+ @supports (color: color-mix(in lab, red, red)) {
1038
+ --tw-gradient-to: color-mix(in oklab, var(--color-indigo-400) 20%, transparent);
1039
+ }
1040
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1041
+ }
1042
+ .to-indigo-600 {
1043
+ --tw-gradient-to: var(--color-indigo-600);
1044
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1045
+ }
1046
+ .to-indigo-700 {
1047
+ --tw-gradient-to: var(--color-indigo-700);
1048
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1049
+ }
1050
+ .to-purple-300\/20 {
1051
+ --tw-gradient-to: color-mix(in srgb, hsl(263 79% 85%) 20%, transparent);
1052
+ @supports (color: color-mix(in lab, red, red)) {
1053
+ --tw-gradient-to: color-mix(in oklab, var(--color-purple-300) 20%, transparent);
1054
+ }
1055
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1056
+ }
940
1057
  .object-contain {
941
1058
  object-fit: contain;
942
1059
  }
@@ -964,6 +1081,9 @@
964
1081
  .p-8 {
965
1082
  padding: calc(var(--spacing) * 8);
966
1083
  }
1084
+ .p-12 {
1085
+ padding: calc(var(--spacing) * 12);
1086
+ }
967
1087
  .px-2 {
968
1088
  padding-inline: calc(var(--spacing) * 2);
969
1089
  }
@@ -985,6 +1105,9 @@
985
1105
  .px-6 {
986
1106
  padding-inline: calc(var(--spacing) * 6);
987
1107
  }
1108
+ .px-8 {
1109
+ padding-inline: calc(var(--spacing) * 8);
1110
+ }
988
1111
  .py-0 {
989
1112
  padding-block: calc(var(--spacing) * 0);
990
1113
  }
@@ -1047,6 +1170,10 @@
1047
1170
  font-size: var(--text-3xl);
1048
1171
  line-height: var(--tw-leading, var(--text-3xl--line-height));
1049
1172
  }
1173
+ .text-base {
1174
+ font-size: var(--text-base);
1175
+ line-height: var(--tw-leading, var(--text-base--line-height));
1176
+ }
1050
1177
  .text-lg {
1051
1178
  font-size: var(--text-lg);
1052
1179
  line-height: var(--tw-leading, var(--text-lg--line-height));
@@ -1188,6 +1315,9 @@
1188
1315
  .text-slate-800 {
1189
1316
  color: var(--color-slate-800);
1190
1317
  }
1318
+ .text-slate-900 {
1319
+ color: var(--color-slate-900);
1320
+ }
1191
1321
  .text-white {
1192
1322
  color: var(--color-white);
1193
1323
  }
@@ -1200,6 +1330,11 @@
1200
1330
  .underline {
1201
1331
  text-decoration-line: underline;
1202
1332
  }
1333
+ .placeholder-slate-400 {
1334
+ &::placeholder {
1335
+ color: var(--color-slate-400);
1336
+ }
1337
+ }
1203
1338
  .accent-blue-600 {
1204
1339
  accent-color: var(--color-blue-600);
1205
1340
  }
@@ -1235,10 +1370,36 @@
1235
1370
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1236
1371
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1237
1372
  }
1373
+ .shadow-purple-500\/30 {
1374
+ --tw-shadow-color: color-mix(in srgb, hsl(264 77% 77%) 30%, transparent);
1375
+ @supports (color: color-mix(in lab, red, red)) {
1376
+ --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-purple-500) 30%, transparent) var(--tw-shadow-alpha), transparent);
1377
+ }
1378
+ }
1379
+ .shadow-purple-500\/40 {
1380
+ --tw-shadow-color: color-mix(in srgb, hsl(264 77% 77%) 40%, transparent);
1381
+ @supports (color: color-mix(in lab, red, red)) {
1382
+ --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-purple-500) 40%, transparent) var(--tw-shadow-alpha), transparent);
1383
+ }
1384
+ }
1385
+ .shadow-slate-200\/50 {
1386
+ --tw-shadow-color: color-mix(in srgb, hsl(210 9% 48%) 50%, transparent);
1387
+ @supports (color: color-mix(in lab, red, red)) {
1388
+ --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-slate-200) 50%, transparent) var(--tw-shadow-alpha), transparent);
1389
+ }
1390
+ }
1238
1391
  .blur {
1239
1392
  --tw-blur: blur(8px);
1240
1393
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1241
1394
  }
1395
+ .blur-2xl {
1396
+ --tw-blur: blur(var(--blur-2xl));
1397
+ filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1398
+ }
1399
+ .blur-3xl {
1400
+ --tw-blur: blur(var(--blur-3xl));
1401
+ filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1402
+ }
1242
1403
  .filter {
1243
1404
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1244
1405
  }
@@ -1280,10 +1441,33 @@
1280
1441
  --tw-duration: 200ms;
1281
1442
  transition-duration: 200ms;
1282
1443
  }
1444
+ .duration-300 {
1445
+ --tw-duration: 300ms;
1446
+ transition-duration: 300ms;
1447
+ }
1283
1448
  .duration-500 {
1284
1449
  --tw-duration: 500ms;
1285
1450
  transition-duration: 500ms;
1286
1451
  }
1452
+ .outline-none {
1453
+ --tw-outline-style: none;
1454
+ outline-style: none;
1455
+ }
1456
+ .group-hover\:translate-x-1 {
1457
+ &:is(:where(.group):hover *) {
1458
+ @media (hover: hover) {
1459
+ --tw-translate-x: calc(var(--spacing) * 1);
1460
+ translate: var(--tw-translate-x) var(--tw-translate-y);
1461
+ }
1462
+ }
1463
+ }
1464
+ .group-hover\:opacity-100 {
1465
+ &:is(:where(.group):hover *) {
1466
+ @media (hover: hover) {
1467
+ opacity: 100%;
1468
+ }
1469
+ }
1470
+ }
1287
1471
  .after\:text-rose-500 {
1288
1472
  &::after {
1289
1473
  content: var(--tw-content);
@@ -1304,6 +1488,16 @@
1304
1488
  }
1305
1489
  }
1306
1490
  }
1491
+ .hover\:scale-105 {
1492
+ &:hover {
1493
+ @media (hover: hover) {
1494
+ --tw-scale-x: 105%;
1495
+ --tw-scale-y: 105%;
1496
+ --tw-scale-z: 105%;
1497
+ scale: var(--tw-scale-x) var(--tw-scale-y);
1498
+ }
1499
+ }
1500
+ }
1307
1501
  .hover\:bg-blue-600 {
1308
1502
  &:hover {
1309
1503
  @media (hover: hover) {
@@ -1445,11 +1639,34 @@
1445
1639
  }
1446
1640
  }
1447
1641
  }
1642
+ .hover\:shadow-xl {
1643
+ &:hover {
1644
+ @media (hover: hover) {
1645
+ --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1646
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1647
+ }
1648
+ }
1649
+ }
1650
+ .hover\:shadow-purple-500\/50 {
1651
+ &:hover {
1652
+ @media (hover: hover) {
1653
+ --tw-shadow-color: color-mix(in srgb, hsl(264 77% 77%) 50%, transparent);
1654
+ @supports (color: color-mix(in lab, red, red)) {
1655
+ --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-purple-500) 50%, transparent) var(--tw-shadow-alpha), transparent);
1656
+ }
1657
+ }
1658
+ }
1659
+ }
1448
1660
  .focus\:border-blue-500 {
1449
1661
  &:focus {
1450
1662
  border-color: var(--color-blue-500);
1451
1663
  }
1452
1664
  }
1665
+ .focus\:border-purple-500 {
1666
+ &:focus {
1667
+ border-color: var(--color-purple-500);
1668
+ }
1669
+ }
1453
1670
  .focus\:ring-2 {
1454
1671
  &:focus {
1455
1672
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
@@ -1461,6 +1678,14 @@
1461
1678
  --tw-ring-color: var(--color-blue-500);
1462
1679
  }
1463
1680
  }
1681
+ .focus\:ring-purple-500\/20 {
1682
+ &:focus {
1683
+ --tw-ring-color: color-mix(in srgb, hsl(264 77% 77%) 20%, transparent);
1684
+ @supports (color: color-mix(in lab, red, red)) {
1685
+ --tw-ring-color: color-mix(in oklab, var(--color-purple-500) 20%, transparent);
1686
+ }
1687
+ }
1688
+ }
1464
1689
  .focus\:ring-slate-500 {
1465
1690
  &:focus {
1466
1691
  --tw-ring-color: var(--color-slate-500);
@@ -1478,6 +1703,14 @@
1478
1703
  outline-style: none;
1479
1704
  }
1480
1705
  }
1706
+ .active\:scale-100 {
1707
+ &:active {
1708
+ --tw-scale-x: 100%;
1709
+ --tw-scale-y: 100%;
1710
+ --tw-scale-z: 100%;
1711
+ scale: var(--tw-scale-x) var(--tw-scale-y);
1712
+ }
1713
+ }
1481
1714
  .disabled\:cursor-not-allowed {
1482
1715
  &:disabled {
1483
1716
  cursor: not-allowed;
@@ -1488,6 +1721,28 @@
1488
1721
  opacity: 50%;
1489
1722
  }
1490
1723
  }
1724
+ .disabled\:hover\:scale-100 {
1725
+ &:disabled {
1726
+ &:hover {
1727
+ @media (hover: hover) {
1728
+ --tw-scale-x: 100%;
1729
+ --tw-scale-y: 100%;
1730
+ --tw-scale-z: 100%;
1731
+ scale: var(--tw-scale-x) var(--tw-scale-y);
1732
+ }
1733
+ }
1734
+ }
1735
+ }
1736
+ .disabled\:hover\:shadow-lg {
1737
+ &:disabled {
1738
+ &:hover {
1739
+ @media (hover: hover) {
1740
+ --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1741
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1742
+ }
1743
+ }
1744
+ }
1745
+ }
1491
1746
  .md\:grid-cols-2 {
1492
1747
  @media (width >= 48rem) {
1493
1748
  grid-template-columns: repeat(2, minmax(0, 1fr));
@@ -8808,6 +9063,21 @@
8808
9063
  initial-value: "";
8809
9064
  inherits: false;
8810
9065
  }
9066
+ @property --tw-scale-x {
9067
+ syntax: "*";
9068
+ inherits: false;
9069
+ initial-value: 1;
9070
+ }
9071
+ @property --tw-scale-y {
9072
+ syntax: "*";
9073
+ inherits: false;
9074
+ initial-value: 1;
9075
+ }
9076
+ @property --tw-scale-z {
9077
+ syntax: "*";
9078
+ inherits: false;
9079
+ initial-value: 1;
9080
+ }
8811
9081
  @keyframes spin {
8812
9082
  to {
8813
9083
  transform: rotate(360deg);
@@ -8878,6 +9148,9 @@
8878
9148
  --tw-backdrop-sepia: initial;
8879
9149
  --tw-duration: initial;
8880
9150
  --tw-content: "";
9151
+ --tw-scale-x: 1;
9152
+ --tw-scale-y: 1;
9153
+ --tw-scale-z: 1;
8881
9154
  --tw-ease: initial;
8882
9155
  }
8883
9156
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/builders-addon/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAe5D,eAAO,MAAM,YAAY,GAAI,UAAU,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA6fxE,CAAC"}
1
+ {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/builders-addon/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAe5D,eAAO,MAAM,YAAY,GAAI,UAAU,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAmgBxE,CAAC"}
@@ -33,7 +33,9 @@ export const getResolvers = (subgraph) => {
33
33
  String(filter.code || "").toLowerCase())
34
34
  return false;
35
35
  if (filter.name &&
36
- !String(builder.name || "").toLowerCase().includes(String(filter.name || "").toLowerCase()))
36
+ !String(builder.name || "")
37
+ .toLowerCase()
38
+ .includes(String(filter.name || "").toLowerCase()))
37
39
  return false;
38
40
  if (filter.slug &&
39
41
  String(builder.slug || "").toLowerCase() !==
@@ -346,9 +348,7 @@ export const getResolvers = (subgraph) => {
346
348
  facetTargets: Array.isArray(rtState.facetTargets)
347
349
  ? rtState.facetTargets
348
350
  : [],
349
- services: Array.isArray(rtState.services)
350
- ? rtState.services
351
- : [],
351
+ services: Array.isArray(rtState.services) ? rtState.services : [],
352
352
  optionGroups: Array.isArray(rtState.optionGroups)
353
353
  ? rtState.optionGroups
354
354
  : [],
@@ -378,7 +378,10 @@ export const getResolvers = (subgraph) => {
378
378
  const description = String(state?.description ?? state?.slug ?? "");
379
379
  const about = String(state?.about ?? "");
380
380
  const isOperator = state?.isOperator ?? false;
381
- const operationalHubMember = state?.operationalHubMember ?? { name: null, phid: null };
381
+ const operationalHubMember = state?.operationalHubMember ?? {
382
+ name: null,
383
+ phid: null,
384
+ };
382
385
  // Document model uses 'skils' (typo), but GraphQL schema uses 'skills'
383
386
  const skills = Array.isArray(state?.skils)
384
387
  ? state.skils
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../subgraphs/builders-addon/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,MAAM,EAAE,YAoSpB,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../subgraphs/builders-addon/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,MAAM,EAAE,YAmSpB,CAAC"}
@@ -209,7 +209,7 @@ export const schema = gql `
209
209
  completed: Int!
210
210
  }
211
211
 
212
- # PRODUCTS #
212
+ # PRODUCTS #
213
213
 
214
214
  type BuilderProduct {
215
215
  id: PHID!
@@ -290,5 +290,4 @@ export const schema = gql `
290
290
  content: String!
291
291
  displayOrder: Int!
292
292
  }
293
-
294
293
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/networks/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK/D,eAAO,MAAM,YAAY,GACvB,UAAU,YAAY,KACrB,MAAM,CAAC,MAAM,EAAE,OAAO,CAkNxB,CAAC"}
1
+ {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/networks/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK/D,eAAO,MAAM,YAAY,GACvB,UAAU,YAAY,KACrB,MAAM,CAAC,MAAM,EAAE,OAAO,CAqNxB,CAAC"}
@@ -102,7 +102,10 @@ export const getResolvers = (subgraph) => {
102
102
  description: state?.description || state?.slug || "",
103
103
  lastModified: state.lastModified || null,
104
104
  isOperator: state?.isOperator ?? false,
105
- operationalHubMember: state?.operationalHubMember ?? { name: null, phid: null },
105
+ operationalHubMember: state?.operationalHubMember ?? {
106
+ name: null,
107
+ phid: null,
108
+ },
106
109
  _contributorPhids: contributorPhids, // Internal field for resolver
107
110
  status: state?.status || null,
108
111
  skills: state?.skils || state?.skills || [],
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/workstreams/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAuC5D,eAAO,MAAM,YAAY,GAAI,UAAU,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA09BxE,CAAC"}
1
+ {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/workstreams/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAuC5D,eAAO,MAAM,YAAY,GAAI,UAAU,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA++BxE,CAAC"}
@@ -439,9 +439,16 @@ export const getResolvers = (subgraph) => {
439
439
  // isOperator: Boolean! - non-nullable, default to false
440
440
  const isOperator = state?.isOperator ?? false;
441
441
  // operationalHubMember: OpHubMember! - non-nullable
442
- const operationalHubMember = state?.operationalHubMember ?? { name: null, phid: null };
442
+ const operationalHubMember = state?.operationalHubMember ?? {
443
+ name: null,
444
+ phid: null,
445
+ };
443
446
  // skills: [BuilderSkill!]! - non-nullable array (document model uses 'skils' typo)
444
- const skills = Array.isArray(state?.skils) ? state.skils : Array.isArray(state?.skills) ? state.skills : [];
447
+ const skills = Array.isArray(state?.skils)
448
+ ? state.skils
449
+ : Array.isArray(state?.skills)
450
+ ? state.skills
451
+ : [];
445
452
  // scopes: [BuilderScope!]! - non-nullable array
446
453
  const scopes = Array.isArray(state?.scopes) ? state.scopes : [];
447
454
  // links: [BuilderLink!]! - non-nullable array
@@ -550,9 +557,16 @@ export const getResolvers = (subgraph) => {
550
557
  // isOperator: Boolean! - non-nullable, default to false
551
558
  const isOperator = state?.isOperator ?? false;
552
559
  // operationalHubMember: OpHubMember! - non-nullable
553
- const operationalHubMember = state?.operationalHubMember ?? { name: null, phid: null };
560
+ const operationalHubMember = state?.operationalHubMember ?? {
561
+ name: null,
562
+ phid: null,
563
+ };
554
564
  // skills: [BuilderSkill!]! - non-nullable array (document model uses 'skils' typo)
555
- const skills = Array.isArray(state?.skils) ? state.skils : Array.isArray(state?.skills) ? state.skills : [];
565
+ const skills = Array.isArray(state?.skils)
566
+ ? state.skils
567
+ : Array.isArray(state?.skills)
568
+ ? state.skills
569
+ : [];
556
570
  // scopes: [BuilderScope!]! - non-nullable array
557
571
  const scopes = Array.isArray(state?.scopes) ? state.scopes : [];
558
572
  // links: [BuilderLink!]! - non-nullable array
@@ -723,9 +737,16 @@ export const getResolvers = (subgraph) => {
723
737
  // isOperator: Boolean! - non-nullable, default to false
724
738
  const isOperator = state?.isOperator ?? false;
725
739
  // operationalHubMember: OpHubMember! - non-nullable
726
- const operationalHubMember = state?.operationalHubMember ?? { name: null, phid: null };
740
+ const operationalHubMember = state?.operationalHubMember ?? {
741
+ name: null,
742
+ phid: null,
743
+ };
727
744
  // skills: [BuilderSkill!]! - non-nullable array (document model uses 'skils' typo)
728
- const skills = Array.isArray(state?.skils) ? state.skils : Array.isArray(state?.skills) ? state.skills : [];
745
+ const skills = Array.isArray(state?.skils)
746
+ ? state.skils
747
+ : Array.isArray(state?.skills)
748
+ ? state.skills
749
+ : [];
729
750
  // scopes: [BuilderScope!]! - non-nullable array
730
751
  const scopes = Array.isArray(state?.scopes) ? state.scopes : [];
731
752
  // links: [BuilderLink!]! - non-nullable array
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@powerhousedao/network-admin",
3
3
  "description": "Network Admin package for Powerhouse",
4
- "version": "1.0.3",
4
+ "version": "1.1.0",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
7
7
  "type": "git",
@@ -69,12 +69,12 @@
69
69
  "service-unstartup": "bash ./node_modules/@powerhousedao/ph-cli/dist/scripts/service-unstartup.sh"
70
70
  },
71
71
  "dependencies": {
72
- "@powerhousedao/builder-profile": "1.0.2",
72
+ "@powerhousedao/builder-profile": "1.0.3",
73
73
  "@powerhousedao/builder-tools": "5.3.3",
74
74
  "@powerhousedao/common": "5.3.3",
75
75
  "@powerhousedao/design-system": "5.3.3",
76
76
  "@powerhousedao/document-engineering": "^1.40.1",
77
- "@powerhousedao/project-management": "1.0.2",
77
+ "@powerhousedao/project-management": "1.0.3",
78
78
  "@powerhousedao/vetra": "^5.3.3",
79
79
  "@uiw/react-md-editor": "^4.0.8",
80
80
  "document-model": "5.3.3",