@powerhousedao/builder-profile 0.0.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/LICENSE +661 -0
- package/README.md +179 -0
- package/dist/document-models/builder-profile/gen/actions.d.ts +4 -0
- package/dist/document-models/builder-profile/gen/actions.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/actions.js +1 -0
- package/dist/document-models/builder-profile/gen/builder/actions.d.ts +8 -0
- package/dist/document-models/builder-profile/gen/builder/actions.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/builder/actions.js +1 -0
- package/dist/document-models/builder-profile/gen/builder/creators.d.ts +4 -0
- package/dist/document-models/builder-profile/gen/builder/creators.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/builder/creators.js +3 -0
- package/dist/document-models/builder-profile/gen/builder/error.d.ts +2 -0
- package/dist/document-models/builder-profile/gen/builder/error.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/builder/error.js +1 -0
- package/dist/document-models/builder-profile/gen/builder/object.d.ts +7 -0
- package/dist/document-models/builder-profile/gen/builder/object.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/builder/object.js +7 -0
- package/dist/document-models/builder-profile/gen/builder/operations.d.ts +7 -0
- package/dist/document-models/builder-profile/gen/builder/operations.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/builder/operations.js +1 -0
- package/dist/document-models/builder-profile/gen/creators.d.ts +2 -0
- package/dist/document-models/builder-profile/gen/creators.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/creators.js +1 -0
- package/dist/document-models/builder-profile/gen/document-model.d.ts +3 -0
- package/dist/document-models/builder-profile/gen/document-model.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/document-model.js +48 -0
- package/dist/document-models/builder-profile/gen/index.d.ts +8 -0
- package/dist/document-models/builder-profile/gen/index.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/index.js +6 -0
- package/dist/document-models/builder-profile/gen/object.d.ts +15 -0
- package/dist/document-models/builder-profile/gen/object.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/object.js +25 -0
- package/dist/document-models/builder-profile/gen/ph-factories.d.ts +27 -0
- package/dist/document-models/builder-profile/gen/ph-factories.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/ph-factories.js +54 -0
- package/dist/document-models/builder-profile/gen/reducer.d.ts +5 -0
- package/dist/document-models/builder-profile/gen/reducer.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/reducer.js +20 -0
- package/dist/document-models/builder-profile/gen/schema/index.d.ts +3 -0
- package/dist/document-models/builder-profile/gen/schema/index.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/schema/index.js +2 -0
- package/dist/document-models/builder-profile/gen/schema/types.d.ts +151 -0
- package/dist/document-models/builder-profile/gen/schema/types.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/schema/types.js +1 -0
- package/dist/document-models/builder-profile/gen/schema/zod.d.ts +12 -0
- package/dist/document-models/builder-profile/gen/schema/zod.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/schema/zod.js +24 -0
- package/dist/document-models/builder-profile/gen/types.d.ts +10 -0
- package/dist/document-models/builder-profile/gen/types.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/types.js +1 -0
- package/dist/document-models/builder-profile/gen/utils.d.ts +22 -0
- package/dist/document-models/builder-profile/gen/utils.d.ts.map +1 -0
- package/dist/document-models/builder-profile/gen/utils.js +46 -0
- package/dist/document-models/builder-profile/index.d.ts +25 -0
- package/dist/document-models/builder-profile/index.d.ts.map +1 -0
- package/dist/document-models/builder-profile/index.js +21 -0
- package/dist/document-models/builder-profile/src/reducers/builder.d.ts +3 -0
- package/dist/document-models/builder-profile/src/reducers/builder.d.ts.map +1 -0
- package/dist/document-models/builder-profile/src/reducers/builder.js +9 -0
- package/dist/document-models/builder-profile/src/tests/builder.test.d.ts +2 -0
- package/dist/document-models/builder-profile/src/tests/builder.test.d.ts.map +1 -0
- package/dist/document-models/builder-profile/src/tests/builder.test.js +116 -0
- package/dist/document-models/builder-profile/src/tests/document-model.test.d.ts +6 -0
- package/dist/document-models/builder-profile/src/tests/document-model.test.d.ts.map +1 -0
- package/dist/document-models/builder-profile/src/tests/document-model.test.js +18 -0
- package/dist/document-models/builder-profile/src/utils.d.ts +2 -0
- package/dist/document-models/builder-profile/src/utils.d.ts.map +1 -0
- package/dist/document-models/builder-profile/src/utils.js +1 -0
- package/dist/document-models/index.d.ts +3 -0
- package/dist/document-models/index.d.ts.map +1 -0
- package/dist/document-models/index.js +1 -0
- package/dist/editors/builder-profile/editor.d.ts +4 -0
- package/dist/editors/builder-profile/editor.d.ts.map +1 -0
- package/dist/editors/builder-profile/editor.js +131 -0
- package/dist/editors/builder-profile/index.d.ts +3 -0
- package/dist/editors/builder-profile/index.d.ts.map +1 -0
- package/dist/editors/builder-profile/index.js +11 -0
- package/dist/editors/hooks/useBuilderProfileDocument.d.ts +4 -0
- package/dist/editors/hooks/useBuilderProfileDocument.d.ts.map +1 -0
- package/dist/editors/hooks/useBuilderProfileDocument.js +8 -0
- package/dist/editors/index.d.ts +3 -0
- package/dist/editors/index.d.ts.map +1 -0
- package/dist/editors/index.js +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/powerhouse.manifest.json +27 -0
- package/dist/processors/index.d.ts +2 -0
- package/dist/processors/index.d.ts.map +1 -0
- package/dist/processors/index.js +1 -0
- package/dist/style.css +5604 -0
- package/dist/subgraphs/builder-profile/index.d.ts +11 -0
- package/dist/subgraphs/builder-profile/index.d.ts.map +1 -0
- package/dist/subgraphs/builder-profile/index.js +11 -0
- package/dist/subgraphs/builder-profile/resolvers.d.ts +3 -0
- package/dist/subgraphs/builder-profile/resolvers.d.ts.map +1 -0
- package/dist/subgraphs/builder-profile/resolvers.js +84 -0
- package/dist/subgraphs/builder-profile/schema.d.ts +3 -0
- package/dist/subgraphs/builder-profile/schema.d.ts.map +1 -0
- package/dist/subgraphs/builder-profile/schema.js +49 -0
- package/dist/subgraphs/index.d.ts +3 -0
- package/dist/subgraphs/index.d.ts.map +1 -0
- package/dist/subgraphs/index.js +1 -0
- package/dist/vitest.config.d.ts +3 -0
- package/dist/vitest.config.d.ts.map +1 -0
- package/dist/vitest.config.js +8 -0
- package/package.json +102 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { TextInput, Textarea, Icon } from "@powerhousedao/document-engineering";
|
|
3
|
+
import { toast, ToastContainer } from "@powerhousedao/design-system";
|
|
4
|
+
import { actions } from "../../document-models/builder-profile/index.js";
|
|
5
|
+
import { useCallback, useState, useEffect, useRef } from "react";
|
|
6
|
+
import { useSelectedBuilderProfileDocument } from "../hooks/useBuilderProfileDocument.js";
|
|
7
|
+
// Image Modal Component
|
|
8
|
+
function ImageModal({ isOpen, onClose, imageUrl, imageAlt, }) {
|
|
9
|
+
const [imageLoaded, setImageLoaded] = useState(false);
|
|
10
|
+
const [imageDimensions, setImageDimensions] = useState({
|
|
11
|
+
width: 0,
|
|
12
|
+
height: 0,
|
|
13
|
+
});
|
|
14
|
+
if (!isOpen)
|
|
15
|
+
return null;
|
|
16
|
+
const handleImageLoad = (e) => {
|
|
17
|
+
const img = e.target;
|
|
18
|
+
setImageDimensions({ width: img.naturalWidth, height: img.naturalHeight });
|
|
19
|
+
setImageLoaded(true);
|
|
20
|
+
};
|
|
21
|
+
// Calculate modal size based on image dimensions with padding
|
|
22
|
+
const getModalSize = () => {
|
|
23
|
+
if (!imageLoaded)
|
|
24
|
+
return { width: "auto", height: "auto" };
|
|
25
|
+
const maxWidth = Math.min(imageDimensions.width + 100, window.innerWidth * 0.8);
|
|
26
|
+
const maxHeight = Math.min(imageDimensions.height + 100, window.innerHeight * 0.8);
|
|
27
|
+
return {
|
|
28
|
+
width: `${maxWidth}px`,
|
|
29
|
+
height: `${maxHeight}px`,
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
return (_jsx("div", { className: "fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm", onClick: onClose, children: _jsxs("div", { className: "relative bg-gray-900 rounded-lg shadow-2xl border-2 border-gray-700", style: getModalSize(), children: [_jsx("button", { onClick: onClose, className: "absolute -top-3 -right-3 z-10 w-8 h-8 bg-gray-800 hover:bg-gray-900 rounded-full flex items-center justify-center text-white transition-all duration-200 shadow-lg", children: _jsx(Icon, { name: "ArrowLeft", size: 16 }) }), _jsx("div", { className: "w-full h-full flex items-center justify-center p-8", children: _jsx("img", { src: imageUrl, alt: imageAlt, className: `max-w-full max-h-full object-contain rounded-lg ${imageLoaded ? "opacity-100" : "opacity-0"} transition-opacity duration-200`, onClick: (e) => e.stopPropagation(), onLoad: handleImageLoad }) })] }) }));
|
|
33
|
+
}
|
|
34
|
+
// Image URL input component with preview
|
|
35
|
+
function ImageUrlInput({ label, value, onChange, placeholder, fileSize = "200KB", }) {
|
|
36
|
+
const [imageError, setImageError] = useState(false);
|
|
37
|
+
const [isModalOpen, setIsModalOpen] = useState(false);
|
|
38
|
+
// Reset image error when value changes
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
setImageError(false);
|
|
41
|
+
}, [value]);
|
|
42
|
+
const handleImageClick = () => {
|
|
43
|
+
if (value &&
|
|
44
|
+
!imageError &&
|
|
45
|
+
(value.startsWith("http://") || value.startsWith("https://"))) {
|
|
46
|
+
setIsModalOpen(true);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "space-y-2", children: [_jsx("label", { className: "block text-sm font-medium text-gray-700", children: label }), _jsxs("div", { className: "border border-gray-300 rounded-lg p-4", children: [_jsx("div", { className: "flex items-center justify-between", children: _jsxs("div", { className: "flex items-center space-x-3", children: [_jsx("div", { className: `flex-shrink-0 w-12 h-12 bg-gray-100 rounded border flex items-center justify-center overflow-hidden ${value &&
|
|
50
|
+
!imageError &&
|
|
51
|
+
(value.startsWith("http://") || value.startsWith("https://"))
|
|
52
|
+
? "cursor-pointer hover:opacity-80 transition-opacity duration-200"
|
|
53
|
+
: ""}`, onClick: handleImageClick, children: value &&
|
|
54
|
+
!imageError &&
|
|
55
|
+
(value.startsWith("http://") ||
|
|
56
|
+
value.startsWith("https://")) ? (_jsx("img", { src: value, alt: `${label} preview`, className: "w-full h-full object-cover", onError: () => setImageError(true), onLoad: () => setImageError(false) })) : (_jsx(Icon, { name: "Image", size: 24, className: "text-gray-400" })) }), _jsx("div", { className: "flex-1 min-w-0", children: _jsxs("div", { className: "text-xs text-gray-500", children: ["File Type: jpg | File Size: ", value ? fileSize : "0KB", imageError && value && (_jsx("div", { className: "text-red-500 mt-1", children: "\u26A0 Failed to load image" })), value &&
|
|
57
|
+
!imageError &&
|
|
58
|
+
(value.startsWith("http://") ||
|
|
59
|
+
value.startsWith("https://")) && (_jsx("div", { className: "text-blue-600 mt-1", children: "\uD83D\uDCA1 Click image to view full size" }))] }) })] }) }), _jsx("div", { className: "mt-3", children: _jsx(TextInput, { className: "w-full", defaultValue: value || "", onBlur: (e) => {
|
|
60
|
+
if (e.target.value !== value) {
|
|
61
|
+
onChange(e.target.value);
|
|
62
|
+
}
|
|
63
|
+
}, placeholder: placeholder || "Enter image URL" }) })] })] }), _jsx(ImageModal, { isOpen: isModalOpen, onClose: () => setIsModalOpen(false), imageUrl: value, imageAlt: `${label} full size` })] }));
|
|
64
|
+
}
|
|
65
|
+
export default function Editor() {
|
|
66
|
+
// Getting dispatch from selected document
|
|
67
|
+
const [doc, dispatch] = useSelectedBuilderProfileDocument();
|
|
68
|
+
const state = doc.state.global;
|
|
69
|
+
// Track if we've already attempted to generate an ID
|
|
70
|
+
const idGeneratedRef = useRef(false);
|
|
71
|
+
// Auto-generate ID if not present (only once)
|
|
72
|
+
useEffect(() => {
|
|
73
|
+
if (!state?.id && !idGeneratedRef.current && dispatch) {
|
|
74
|
+
idGeneratedRef.current = true; // Mark as attempted
|
|
75
|
+
dispatch(actions.updateProfile({
|
|
76
|
+
id: doc.header.id,
|
|
77
|
+
}));
|
|
78
|
+
}
|
|
79
|
+
}, [state?.id, dispatch]);
|
|
80
|
+
// Generate slug from name
|
|
81
|
+
const generateSlug = useCallback((name) => {
|
|
82
|
+
return name
|
|
83
|
+
.toLowerCase()
|
|
84
|
+
.trim()
|
|
85
|
+
.replace(/[^a-z0-9\s-]/g, "") // Remove special characters except spaces and hyphens
|
|
86
|
+
.replace(/\s+/g, "-") // Replace spaces with hyphens
|
|
87
|
+
.replace(/-+/g, "-") // Replace multiple hyphens with single hyphen
|
|
88
|
+
.replace(/^-|-$/g, ""); // Remove leading/trailing hyphens
|
|
89
|
+
}, []);
|
|
90
|
+
// Handle field changes using the UPDATE_PROFILE operation
|
|
91
|
+
const handleFieldChange = useCallback((field, value) => {
|
|
92
|
+
if (!dispatch) {
|
|
93
|
+
console.error("Dispatch function not available");
|
|
94
|
+
toast(`Failed to update ${field} - no dispatch function`, {
|
|
95
|
+
type: "error",
|
|
96
|
+
});
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
// If updating name and value is not empty, also update slug
|
|
100
|
+
if (field === "name" && value && value.trim()) {
|
|
101
|
+
const slug = generateSlug(value);
|
|
102
|
+
dispatch(actions.updateProfile({
|
|
103
|
+
name: value,
|
|
104
|
+
slug: slug,
|
|
105
|
+
}));
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
// Only update the changed field along with id
|
|
109
|
+
const updateAction = actions.updateProfile({
|
|
110
|
+
[field]: value,
|
|
111
|
+
});
|
|
112
|
+
dispatch(updateAction);
|
|
113
|
+
}
|
|
114
|
+
}, [dispatch, generateSlug]);
|
|
115
|
+
return (_jsx("div", { className: "w-full bg-gray-50 min-h-screen", children: _jsxs("div", { className: "p-6 max-w-4xl mx-auto", children: [_jsxs("div", { className: "bg-white rounded-lg p-6 mb-6 shadow-sm", children: [_jsx("h1", { className: "text-3xl font-bold text-gray-900 mb-2", children: "Builder Profile" }), _jsx("p", { className: "text-gray-600", children: "Create and manage your builder profile information" })] }), state && (state.name || state.icon || state.description) && (_jsxs("div", { className: "bg-white rounded-lg p-6 shadow-sm mb-6", children: [_jsx("h3", { className: "text-lg font-medium text-gray-900 mb-4", children: "Profile Preview" }), _jsx("div", { className: "border border-gray-200 rounded-lg p-4", children: _jsxs("div", { className: "flex items-start space-x-4", children: [_jsx("div", { className: "flex-shrink-0", children: state.icon ? (_jsx("img", { src: state.icon, alt: "Profile icon", className: "w-16 h-16 rounded-full object-cover border-2 border-gray-200" })) : (_jsx("div", { className: "w-16 h-16 rounded-full bg-gray-200 flex items-center justify-center", children: _jsx(Icon, { name: "Image", size: 24, className: "text-gray-400" }) })) }), _jsxs("div", { className: "flex-1", children: [_jsx("h4", { className: "text-lg font-semibold text-gray-900", children: state.name || "Unnamed Builder" }), state.slug && (_jsxs("p", { className: "text-sm text-gray-500 mb-2", children: ["@", state.slug] })), state.description && (_jsx("p", { className: "text-gray-700", children: state.description }))] })] }) })] })), _jsx("div", { className: "bg-white rounded-lg p-6 shadow-sm", children: _jsxs("div", { className: "space-y-6", children: [_jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-gray-700 mb-2", children: "Builder ID:" }), _jsxs("div", { className: "text-sm text-gray-500 flex items-center", children: [_jsx("span", { className: "mr-2", children: doc.header.id }), _jsx("button", { type: "button", className: "ml-1 p-1 rounded transition active:bg-gray-400 hover:bg-gray-200", title: "Copy Builder ID", onClick: () => {
|
|
116
|
+
navigator.clipboard.writeText(doc.header.id || "");
|
|
117
|
+
toast("Copied Builder ID!", {
|
|
118
|
+
type: "success",
|
|
119
|
+
});
|
|
120
|
+
}, children: _jsx(Icon, { name: "Copy", size: 16, className: "text-gray-400" }) })] })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-gray-700 mb-2", children: "Builder Name:" }), _jsx(TextInput, { className: "w-full", defaultValue: state?.name || "", onBlur: (e) => {
|
|
121
|
+
if (e.target.value !== state?.name) {
|
|
122
|
+
handleFieldChange("name", e.target.value);
|
|
123
|
+
}
|
|
124
|
+
}, placeholder: "Enter your name" })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-gray-700 mb-2", children: "Profile Slug:" }), _jsx(TextInput, { className: "w-full", value: state?.slug || "", onChange: (e) => {
|
|
125
|
+
handleFieldChange("slug", e.target.value);
|
|
126
|
+
}, placeholder: "your-profile-slug" }), _jsx("p", { className: "text-xs text-gray-500 mt-1", children: "Used for your profile URL (lowercase, no spaces)" })] }), _jsx(ImageUrlInput, { label: "Profile Icon:", value: state?.icon || "", onChange: (value) => handleFieldChange("icon", value), placeholder: "BuilderIcon.jpg", fileSize: "200KB" }), _jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-gray-700 mb-2", children: "Description:" }), _jsx(Textarea, { className: "w-full", defaultValue: state?.description || "", onBlur: (e) => {
|
|
127
|
+
if (e.target.value !== state?.description) {
|
|
128
|
+
handleFieldChange("description", e.target.value);
|
|
129
|
+
}
|
|
130
|
+
}, placeholder: "Tell us about yourself as a builder...", rows: 4, autoExpand: true })] })] }) }), _jsx(ToastContainer, { position: "bottom-right" })] }) }));
|
|
131
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../editors/builder-profile/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,eAAO,MAAM,MAAM,EAAE,YASpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Editor from "./editor.js";
|
|
2
|
+
export const module = {
|
|
3
|
+
Component: Editor,
|
|
4
|
+
documentTypes: ["powerhouse/builder-profile"],
|
|
5
|
+
config: {
|
|
6
|
+
id: "builder-profile-editor",
|
|
7
|
+
disableExternalControls: true,
|
|
8
|
+
documentToolbarEnabled: true,
|
|
9
|
+
showSwitchboardLink: true,
|
|
10
|
+
},
|
|
11
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { BuilderProfileDocument } from "../../document-models/builder-profile/index.js";
|
|
2
|
+
export declare function useBuilderProfileDocument(documentId: string | null | undefined): never[] | [BuilderProfileDocument, import("@powerhousedao/reactor-browser").DocumentDispatch<import("../../document-models/builder-profile/gen/actions.js").UpdateProfileAction>];
|
|
3
|
+
export declare function useSelectedBuilderProfileDocument(): never[] | [BuilderProfileDocument, import("@powerhousedao/reactor-browser").DocumentDispatch<import("../../document-models/builder-profile/gen/actions.js").UpdateProfileAction>];
|
|
4
|
+
//# sourceMappingURL=useBuilderProfileDocument.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBuilderProfileDocument.d.ts","sourceRoot":"","sources":["../../../editors/hooks/useBuilderProfileDocument.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,gDAAgD,CAAC;AAExD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,qLAMtC;AAED,wBAAgB,iCAAiC,sLAGhD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { useDocumentOfType, useSelectedDocumentId, } from "@powerhousedao/reactor-browser";
|
|
2
|
+
export function useBuilderProfileDocument(documentId) {
|
|
3
|
+
return useDocumentOfType(documentId, "powerhouse/builder-profile");
|
|
4
|
+
}
|
|
5
|
+
export function useSelectedBuilderProfileDocument() {
|
|
6
|
+
const selectedDocumentId = useSelectedDocumentId();
|
|
7
|
+
return useBuilderProfileDocument(selectedDocumentId);
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC;AACV,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { module as BuilderProfile } from "./builder-profile/index.js";
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Manifest } from "document-model";
|
|
2
|
+
export declare const manifest: Manifest;
|
|
3
|
+
export declare const documentModels: import("document-model").DocumentModelModule<import("./document-models/builder-profile/gen/ph-factories.js").BuilderProfilePHState>[];
|
|
4
|
+
export declare const editors: import("document-model").EditorModule[];
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK1C,eAAO,MAAM,QAAQ,EAAE,QAAuB,CAAC;AAC/C,eAAO,MAAM,cAAc,uIAAuC,CAAC;AACnE,eAAO,MAAM,OAAO,yCAAgC,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import manifestJson from "./powerhouse.manifest.json" with { type: "json" };
|
|
2
|
+
import * as documentModelsExports from './document-models/index.js';
|
|
3
|
+
import * as editorsExports from './editors/index.js';
|
|
4
|
+
export const manifest = manifestJson;
|
|
5
|
+
export const documentModels = Object.values(documentModelsExports);
|
|
6
|
+
export const editors = Object.values(editorsExports);
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "builder-profile",
|
|
3
|
+
"description": "A place to handle all builder profile related info",
|
|
4
|
+
"category": "Project Management",
|
|
5
|
+
"publisher": {
|
|
6
|
+
"name": "Powerhouse",
|
|
7
|
+
"url": "https://powerhouse.inc/"
|
|
8
|
+
},
|
|
9
|
+
"documentModels": [
|
|
10
|
+
{
|
|
11
|
+
"id": "powerhouse/builder-profile",
|
|
12
|
+
"name": "Builder Profile"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"editors": [
|
|
16
|
+
{
|
|
17
|
+
"id": "builder-profile-editor",
|
|
18
|
+
"name": "Builder Profile Editor",
|
|
19
|
+
"documentTypes": [
|
|
20
|
+
"powerhouse/builder-profile"
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"apps": [],
|
|
25
|
+
"subgraphs": [],
|
|
26
|
+
"importScripts": []
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|