MCPcopy Create free account

hub / github.com/ZSeven-W/openpencil / functions

Functions3,401 in github.com/ZSeven-W/openpencil

↓ 1 callersFunctionnormalizeNodeShape
* Normalize common agent shorthand into canonical PenNode format. * Applied before sanitizeObject so downstream code sees a consistent shape.
packages/pen-mcp/src/tools/batch-design.ts:565
↓ 1 callersFunctionnormalizeNodeStroke
(node: PenNode)
packages/pen-core/src/normalize/normalize-stroke-fill-schema.ts:56
↓ 1 callersFunctionnormalizeOriginalSize
(width?: number, height?: number)
packages/pen-figma/src/figma-fill-mapper.ts:98
↓ 1 callersFunctionnormalizeOriginalSize
(width?: number, height?: number)
apps/web/src/services/figma/figma-fill-mapper.ts:98
↓ 1 callersFunctionnormalizePadding
( value: unknown, )
packages/pen-core/src/normalize.ts:262
↓ 1 callersFunctionnormalizePromptText
(text: string)
apps/web/src/services/ai/orchestrator-prompt-optimizer.ts:521
↓ 1 callersFunctionnormalizeRingProgressPath
(track: PenNode, progress: PenNode)
apps/web/src/services/ai/sanitize-llm-anti-patterns.ts:433
↓ 1 callersFunctionnormalizeStroke
(raw: Record<string, unknown>)
packages/pen-core/src/normalize.ts:209
↓ 1 callersFunctionnormalizeStrokeField
(value: unknown)
packages/pen-mcp/src/tools/batch-design.ts:605
↓ 1 callersMethodoff
(event: K, cb: Events[K])
packages/pen-engine/src/core/event-emitter.ts:14
↓ 1 callersMethodonDblClick
()
apps/web/src/canvas/skia/skia-pen-tool.ts:123
↓ 1 callersMethodonKeyDown
(_key: string)
packages/pen-engine/src/browser/interaction/pen-tool-handler.ts:20
↓ 1 callersMethodonKeyDown
(key: string)
apps/web/src/canvas/skia/skia-pen-tool.ts:131
↓ 1 callersMethodonMouseDown
(_scene: { x: number; y: number }, _zoom: number)
packages/pen-engine/src/browser/interaction/pen-tool-handler.ts:8
↓ 1 callersMethodonMouseDown
(scene: { x: number; y: number }, zoom: number)
apps/web/src/canvas/skia/skia-pen-tool.ts:52
↓ 1 callersMethodonMouseMove
(_scene: { x: number; y: number })
packages/pen-engine/src/browser/interaction/pen-tool-handler.ts:11
↓ 1 callersMethodonMouseMove
(scene: { x: number; y: number })
apps/web/src/canvas/skia/skia-pen-tool.ts:94
↓ 1 callersMethodonMouseUp
()
packages/pen-engine/src/browser/interaction/pen-tool-handler.ts:14
↓ 1 callersMethodonToolChange
(tool: string)
apps/web/src/canvas/skia/skia-pen-tool.ts:38
↓ 1 callersFunctionorderConflicts
( document: PenDocument, nodeConflicts: Map<string, NodeConflictEntry>, fieldConflicts: Map<string, Fiel
apps/web/src/components/panels/git-panel/conflict-formatters.ts:53
↓ 1 callersFunctionparseAgentSSE
* Parse SSE chunks from a ReadableStream and yield AgentEvents. * Handles partial chunks that may be split across reads.
apps/web/src/components/panels/ai-chat-handlers.ts:130
↓ 1 callersFunctionparseArgs
()
packages/pen-mcp/src/server.ts:210
↓ 1 callersFunctionparseArgs
(argv: string[])
apps/cli/src/index.ts:14
↓ 1 callersFunctionparseClipboardHtmlStyles
* Parse the styled HTML portion of a Figma clipboard to extract text style hints. * Figma clipboard HTML contains styled elements (p, span, div) with
packages/pen-figma/src/figma-clipboard.ts:290
↓ 1 callersFunctionparseCodexLatestModelMd
* Fallback: parse model IDs from Codex's bundled latest-model.md when * models_cache.json is missing (e.g. fresh Windows install). * Only includes t
apps/web/server/api/ai/connect-agent.ts:378
↓ 1 callersFunctionparseCopyArgs
( argsStr: string, bindings: Map<string, string>, )
packages/pen-mcp/src/tools/batch-design.ts:372
↓ 1 callersFunctionparseDOMElement
(el: Element, scale: number, parentCtx: StyleCtx)
packages/pen-engine/src/core/svg-parser.ts:136
↓ 1 callersFunctionparseDataUrl
(url: string)
apps/web/src/services/ai/codegen-assets.ts:79
↓ 1 callersFunctionparseDataUrl
(url: string)
apps/web/src/services/ai/consumer-view-enrichment.ts:26
↓ 1 callersFunctionparseDesignSystem
* Parse a design system from AI response text. * Tolerant of code fences and surrounding text.
apps/web/src/services/ai/design-system-generator.ts:35
↓ 1 callersFunctionparseDetailStatus
Parse [done]/[pending]/[error] prefix from a detail line
apps/web/src/components/panels/ai-chat-checklist.tsx:9
↓ 1 callersFunctionparseDroppedFile
* Parse a dropped File into a PenDocument. * Returns null if the file is not a valid .op/.pen/.json document.
apps/web/src/hooks/use-file-drop.ts:11
↓ 1 callersFunctionparseEnvText
Parse KEY=VALUE lines into a record
apps/web/src/components/shared/acp-agent-settings.tsx:34
↓ 1 callersFunctionparseFrontmatter
(filePath: string)
packages/pen-ai-skills/vite-plugin-skills.ts:32
↓ 1 callersFunctionparseFrontmatter
Parse YAML frontmatter from a style guide markdown file
packages/pen-ai-skills/src/style-guide/style-guide-loader.ts:4
↓ 1 callersFunctionparseGeminiJsonOutput
* Parse Gemini CLI JSON output. * The CLI may print error text before the final JSON object. * We search from the END of stdout for the last valid J
apps/web/server/utils/gemini-client.ts:294
↓ 1 callersFunctionparseIconBody
* Parse the SVG `body` field from Iconify into path data. * Extracts `d` from `<path>` elements and detects stroke vs fill style.
apps/web/server/api/ai/icon.ts:157
↓ 1 callersFunctionparseInlineMarkdown
(text: string)
apps/web/src/components/panels/chat-message-content.tsx:109
↓ 1 callersFunctionparseInsertArgs
( argsStr: string, bindings: Map<string, string>, )
packages/pen-mcp/src/tools/batch-design.ts:359
↓ 1 callersFunctionparseJsonlToTree
* Parse JSONL-format response (flat nodes with _parent field) into a tree. * Used by extractAndApplyDesign for batch apply of JSONL content.
apps/web/src/services/ai/design-parser.ts:207
↓ 1 callersFunctionparseMarkdown
( text: string, onApplyDesign?: (json: string) => void, isApplied?: boolean, isStreaming?: boolean, )
apps/web/src/components/panels/chat-message-content.tsx:11
↓ 1 callersFunctionparseOpenCodeModel
Parse an OpenCode model string ("providerID/modelID") into its parts
apps/web/server/api/ai/generate.ts:378
↓ 1 callersFunctionparseOpenCodeModel
Parse an OpenCode model string ("providerID/modelID") into its parts
apps/web/server/api/ai/chat.ts:509
↓ 1 callersFunctionparseOpenCodeModel
(model?: string)
apps/web/server/api/ai/validate.ts:187
↓ 1 callersFunctionparsePadding
( padding: number | [number, number] | [number, number, number, number] | undefined, )
packages/pen-mcp/src/tools/design-skeleton.ts:188
↓ 1 callersFunctionparseRegexTag
( tag: string, attrs: string, innerBody: string, scale: number, parentCtx: StyleCtx, )
packages/pen-engine/src/core/svg-parser.ts:321
↓ 1 callersFunctionparseReplaceArgs
( argsStr: string, bindings: Map<string, string>, )
packages/pen-mcp/src/tools/batch-design.ts:412
↓ 1 callersFunctionparseShapeDOM
( tag: string, el: Element, base: { id: string; opacity?: number }, fill: PenFill[] | undefined, str
packages/pen-engine/src/core/svg-parser.ts:170
↓ 1 callersFunctionparseSizingHint
(value: string)
apps/web/src/services/ai/consumer-view-enrichment.ts:316
↓ 1 callersFunctionparseSvgDOM
(svgText: string, maxDim: number)
packages/pen-engine/src/core/svg-parser.ts:107
↓ 1 callersFunctionparseSvgRegex
(svgText: string, maxDim: number)
packages/pen-engine/src/core/svg-parser.ts:286
↓ 1 callersFunctionparseToolInput
(input: unknown)
apps/web/server/utils/agent-tool-guard.ts:10
↓ 1 callersFunctionparseUpdateArgs
( argsStr: string, bindings: Map<string, string>, )
packages/pen-mcp/src/tools/batch-design.ts:400
↓ 1 callersFunctionparseValidationResponse
(text: string)
apps/web/src/services/ai/design-validation.ts:189
↓ 1 callersFunctionpatchNode
( node: PenNode, dataUrls: Map<number, string>, hashDataUrls: Map<string, string>, )
packages/pen-figma/src/figma-image-resolver.ts:73
↓ 1 callersFunctionpickActivePageFrame
(doc: PenDocument, activePageId: string | null)
apps/web/src/services/ai/append-intent-detector.ts:53
↓ 1 callersFunctionpickAndParsePenFile
()
apps/web/src/uikit/kit-import-export.ts:101
↓ 1 callersFunctionpickContentRoot
(page: FrameNode)
apps/web/src/services/ai/append-intent-detector.ts:23
↓ 1 callersFunctionpickFallback
()
apps/web/src/uikit/kit-import-export.ts:130
↓ 1 callersFunctionpickFieldForResolution
( resolution: ConflictResolution, conflict: DocFieldConflict, )
apps/desktop/git/merge-orchestrator.ts:140
↓ 1 callersFunctionpickFileSystemAccess
()
apps/web/src/uikit/kit-import-export.ts:108
↓ 1 callersFunctionpickNodeForResolution
( resolution: ConflictResolution, conflict: NodeConflict, )
apps/desktop/git/merge-orchestrator.ts:129
↓ 1 callersFunctionpolygonToPath
(count: number, w: number, h: number)
packages/pen-core/src/boolean-ops.ts:130
↓ 1 callersFunctionprepareDesignPrompt
(prompt: string)
apps/web/src/services/ai/orchestrator-prompt-optimizer.ts:110
↓ 1 callersFunctionprepareImportedDocument
(raw: unknown, filePath?: string | null)
packages/pen-mcp/src/document-manager.ts:293
↓ 1 callersFunctionpresetMatchesURL
Whether the given preset's URL family covers `normalizedURL`.
apps/web/src/lib/builtin-provider-presets.ts:355
↓ 1 callersFunctionprocessQueue
()
apps/web/src/services/ai/image-search-pipeline.ts:89
↓ 1 callersFunctionpromptOpenCodeWithThinking
( ocClient: any, basePayload: Record<string, unknown>, body: GenerateBody, )
apps/web/server/api/ai/generate.ts:184
↓ 1 callersFunctionpushDocumentToServer
(clientId: string | null)
apps/web/src/hooks/use-mcp-sync.ts:98
↓ 1 callersFunctionquerySerializer
(queryParams: T)
apps/web/server/opencode/v2/gen/client/utils.gen.ts:18
↓ 1 callersFunctionquerySerializer
(queryParams: T)
apps/web/server/opencode/gen/client/utils.gen.ts:18
↓ 1 callersFunctionquerySystemFonts
()
packages/pen-react/src/components/font-picker.tsx:41
↓ 1 callersFunctionquerySystemFonts
()
apps/web/src/hooks/use-system-fonts.ts:46
↓ 1 callersFunctionquitAndInstall
()
apps/desktop/auto-updater.ts:129
↓ 1 callersFunctionrankStyleGuidesForPrompt
(tags: string[], platform: string)
apps/web/src/services/ai/orchestrator-prompt-optimizer.ts:453
↓ 1 callersMethodread
* Read file * * Read the content of a specified file.
apps/web/server/opencode/v2/gen/sdk.gen.ts:2951
↓ 1 callersFunctionreadCap
(raw: unknown)
packages/pen-core/src/normalize/normalize-stroke-fill-schema.ts:201
↓ 1 callersFunctionreadClaudeSettingsEnv
* Read env from ~/.claude/settings.json and ~/.claude/settings.local.json. * Local settings take priority (same as Claude Code's own precedence).
apps/web/server/utils/resolve-claude-agent-env.ts:62
↓ 1 callersFunctionreadCornerRadius
(node: PenNode)
packages/pen-core/src/layout/unwrap-fake-phone-mockup.ts:142
↓ 1 callersFunctionreadDashOffset
(raw: unknown)
packages/pen-core/src/normalize/normalize-stroke-fill-schema.ts:192
↓ 1 callersFunctionreadDashPattern
(raw: unknown)
packages/pen-core/src/normalize/normalize-stroke-fill-schema.ts:175
↓ 1 callersFunctionreadJoin
(raw: unknown)
packages/pen-core/src/normalize/normalize-stroke-fill-schema.ts:205
↓ 1 callersFunctionreadStoredConcurrency
()
apps/web/src/stores/ai-store.ts:63
↓ 1 callersFunctionreadStoredModelPreference
()
apps/web/src/stores/ai-store.ts:43
↓ 1 callersFunctionreadThemeFromNodeFill
* Read theme from a single node's fill if it has a parseable solid * color. Returns `undefined` for missing fill, empty fill, gradient, * variable r
apps/web/src/services/ai/design-canvas-ops.ts:1003
↓ 1 callersFunctionrebuildDocument
* Rebuild a PenDocument from a decision map. Uses ours' page structure as the * scaffold (so users see their own page list). For each merged node, at
packages/pen-core/src/merge/node-merge.ts:337
↓ 1 callersFunctionrectToPath
(w: number, h: number, cr?: number | [number, number, number, number])
packages/pen-core/src/boolean-ops.ts:92
↓ 1 callersMethodreject
* Reject question request * * Reject a question request from the AI assistant.
apps/web/server/opencode/gen/sdk.gen.ts:2616
↓ 1 callersFunctionrejectPending
(requestId: string, err: Error)
apps/web/server/utils/mcp-screenshot-rpc.ts:63
↓ 1 callersFunctionrelativeTime
(timestamp: number)
apps/web/src/utils/recent-files.ts:52
↓ 1 callersFunctionrelease
()
packages/pen-renderer/src/__tests__/image-loader.test.ts:29
↓ 1 callersFunctionreleaseA
()
packages/pen-renderer/src/__tests__/font-manager.test.ts:33
↓ 1 callersFunctionreleaseB
()
packages/pen-renderer/src/__tests__/font-manager.test.ts:34
↓ 1 callersFunctionreleaseSlot
()
apps/web/src/services/ai/orchestrator-sub-agent.ts:187
↓ 1 callersFunctionremapIds
( children: PenNode[], refId: string, overrides?: Record<string, Partial<PenNode>>, )
packages/pen-renderer/src/document-flattener.ts:371
↓ 1 callersFunctionremoveAgentIndicator
(nodeId: string)
apps/web/src/canvas/agent-indicator.ts:66
↓ 1 callersFunctionremoveDuplicateStatusBars
* Removes AI-generated status-bar frames from root frames. * Re-reads from the store after each removal to avoid stale references. * Nodes with `rol
apps/web/src/services/ai/orchestrator.ts:73
↓ 1 callersFunctionremoveNodeById
* Remove a node from the document tree by id. Returns a new document.
apps/desktop/git/merge-orchestrator.ts:205
↓ 1 callersMethodrender
()
packages/pen-renderer/src/renderer.ts:307
↓ 1 callersFunctionrenderAction
()
apps/web/src/components/shared/agent-settings-providers-tab.tsx:173
← previousnext →2,101–2,200 of 3,401, ranked by callers