Community-built comprehensive 2D content creation appplication for graphic design, digital art, and interactive real-time motion graphics powered by a node-based procedural graphics engine
225 matches across 8 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | deny.toml | 1 | # This template contains all of the possible sections and their default values |
| LOW | deny.toml | 21 | targets = [ |
| LOW | deny.toml | 41 | ignore = [ |
| LOW | deny.toml | 81 | "Zlib", # Keep this list in sync with those in `/about.toml` |
| LOW | deny.toml | 101 | # licensing information |
| LOW | deny.toml | 121 | # published to private registries |
| LOW | deny.toml | 141 | # * lowest-version - The path to the lowest versioned duplicate is highlighted |
| LOW | deny.toml | 161 | #{ name = "ansi_term", version = "=0.11.0" }, |
| LOW | deny.toml | 181 | unknown-git = "warn" |
| LOW | rustfmt.toml | 1 | edition = "2024" |
| LOW | frontend/wrapper/src/helpers.rs | 281 | "ArrowLeft" => ArrowLeft, |
| LOW | frontend/wrapper/src/helpers.rs | 301 | // "NumpadComma" => KeyNumpadComma, |
| LOW | frontend/src/vite-env.d.ts | 1 | /// <reference types="svelte" /> |
| LOW | frontend/src/icons.ts | 481 | // Constraining its values means that TypeScript can make sure each icon definition has a valid size number from the uni |
| LOW | frontend/src/utility-functions/keyboard-entry.ts | 21 | // Directly using `KeyboardEvent.code` scan code only works on a US QWERTY layout, because alternate layouts like |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 361 | // Accompanying diagram: <https://files.keavon.com/-/SpringgreenKnownXantus/capture.png> |
| LOW | frontend/src/components/panels/Document.svelte | 821 | // --available-height-plus-1: calc(var(--available-height) + 1px); |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 341 | } |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 401 | const target = e.target || undefined; |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 521 | const combined = initialValue + cumulativeDragDelta; |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 541 | // - If this is the first "input" event upon mousedown, manage the state so we end up waiting for the user to decide on |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 661 | // We want to let the user abort while dragging the slider by right clicking or pressing Escape. |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 721 | // Set the value back to the original value before the user began dragging. |
| LOW | website/sass/base.scss | 721 | // height: 40px; |
| LOW | libraries/dyn-any/derive/src/lib.rs | 1 | #![doc(html_root_url = "http://docs.rs/dyn-any-derive/0.1.0")] |
| LOW | libraries/dyn-any/derive/src/lib.rs | 21 | /// # use dyn_any::{DynAny, StaticType}; |
| LOW | desktop/bundle/src/mac.rs | 141 | #[derive(serde::Serialize)] |
| LOW | desktop/bundle/src/mac.rs | 161 | cf_bundle_version: String, |
| LOW | desktop/bundle/src/mac.rs | 181 | #[serde(skip_serializing_if = "Option::is_none")] |
| LOW | desktop/embedded-resources/src/lib.rs | 1 | //! This crate provides `EMBEDDED_RESOURCES` that can be included in the desktop application binary. |
| LOW | desktop/src/cef.rs | 1 | //! CEF (Chromium Embedded Framework) integration for Graphite Desktop |
| LOW | desktop/src/cef/input.rs | 101 | // |
| LOW | .github/workflows/comment-!build-commands.yml | 1 | # USAGE: |
| LOW | proc-macros/src/lib.rs | 21 | use crate::hint::derive_hint_impl; |
| LOW | proc-macros/src/lib.rs | 41 | /// If the discriminant is supposed to also have an attribute, you must double it with `#[discriminant_attr(…)]` |
| LOW | proc-macros/src/lib.rs | 61 | /// Foo(u8), |
| LOW | proc-macros/src/lib.rs | 81 | /// like in the example. |
| LOW | proc-macros/src/lib.rs | 101 | /// |
| LOW | proc-macros/src/lib.rs | 121 | /// #[parent(C, C)] |
| LOW | proc-macros/src/lib.rs | 141 | /// # use editor::utility_traits::TransitiveChild; |
| LOW | proc-macros/src/lib.rs | 161 | /// #[parent_is_top] |
| LOW | proc-macros/src/lib.rs | 181 | /// } |
| LOW | proc-macros/src/lib.rs | 201 | /// |
| LOW | proc-macros/src/lib.rs | 221 | TokenStream::from(combined_message_attrs_impl(attr.into(), input_item.into()).unwrap_or_else(|err| err.to_compile_error |
| LOW | proc-macros/src/lib.rs | 241 | #[proc_macro_derive(Hint, attributes(hint))] |
| LOW | proc-macros/src/lib.rs | 261 | /// SelectToolState::TransformSelected |
| LOW | editor/src/macros.rs | 1 | /// Syntax sugar for initializing an `ActionList` |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 81 | #[serde(rename = "virtualScrolling")] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 121 | #[widget_builder(skip)] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 181 | #[serde(rename = "incrementBehavior")] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 281 | // Behavior |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 321 | #[widget_builder(not_widget_instance)] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 341 | pub on_update: WidgetCallback<()>, |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 401 | // Sizing |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 421 | pub on_commit: WidgetCallback<()>, |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 441 | // #[serde(skip)] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 481 | #[cfg_attr(feature = "wasm", derive(tsify::Tsify))] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 501 | #[serde(rename = "newColorCSS")] |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 521 | pub on_update: WidgetCallback<()>, |
| LOW | …messages/layout/utility_types/widgets/input_widgets.rs | 561 | #[serde(rename = "trackCSS")] |
| 109 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | frontend/src/subscriptions-router.ts | 12 | export function createSubscriptionsRouter() { |
| LOW | frontend/src/utility-functions/colors.ts | 196 | export function fillChoiceUIGradientStops(value: FillChoiceUI): GradientStopsUI | undefined { |
| LOW | frontend/src/utility-functions/keyboard-entry.ts | 1 | export function makeKeyboardModifiersBitfield(e: WheelEvent | PointerEvent | MouseEvent | KeyboardEvent): number { |
| LOW | frontend/src/utility-functions/network.ts | 9 | export function requestWithUploadDownloadProgress( |
| LOW | frontend/src/utility-functions/input.ts | 26 | export async function shouldRedirectKeyboardEventToBackend(e: KeyboardEvent, dialogStore: DialogStore): Promise<boolean> |
| LOW | frontend/src/utility-functions/input.ts | 354 | function potentiallyRestoreCanvasFocus(e: Event) { |
| LOW | frontend/src/utility-functions/viewports.ts | 6 | export function hasFirstArtworkBeenReceived(): boolean { |
| LOW | frontend/src/utility-functions/viewports.ts | 13 | export function setupViewportResizeObserver(editor: EditorWrapper): () => void { |
| LOW | frontend/src/utility-functions/persistence.ts | 195 | function extractIsSavedFromUnknown(details: unknown): boolean { |
| LOW | frontend/src/managers/localization.ts | 8 | export function createLocalizationManager(subscriptions: SubscriptionsRouter, editor: EditorWrapper) { |
| LOW | frontend/src/managers/localization.ts | 20 | export function destroyLocalizationManager() { |
| LOW | frontend/src/managers/persistence.ts | 58 | export function destroyPersistenceManager() { |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 6 | export function preventEscapeClosingParentFloatingMenu(element: HTMLElement) { |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 125 | function setSafariScrollableOverflow(hidden: boolean) { |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 183 | function positionAndStyleFloatingMenu() { |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 298 | export async function measureAndEmitNaturalWidth() { |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 471 | function isPointerEventOutsideFloatingMenu(e: PointerEvent, extraDistanceAllowed = 0): boolean { |
| LOW | frontend/src/components/layout/FloatingMenu.svelte | 478 | function isPointerEventOutsideMenuElement(e: PointerEvent, element: Element, extraDistanceAllowed = 0): boolean { |
| LOW | frontend/src/components/panels/Document.svelte | 225 | export async function updateEyedropperSamplingState( |
| LOW | frontend/src/components/panels/Document.svelte | 310 | function updateRulerCursorPosition(e: PointerEvent) { |
| LOW | frontend/src/components/panels/Document.svelte | 423 | export function displayRemoveEditableTextbox() { |
| LOW | frontend/src/components/panels/Document.svelte | 445 | function gradientStopPickerDirection(position: { x: number; y: number } | undefined, viewport: HTMLDivElement | undefin |
| LOW | frontend/src/components/panels/Layers.svelte | 110 | function toggleNodeVisibilityLayerPanel(id: bigint) { |
| LOW | frontend/src/components/panels/Layers.svelte | 118 | function handleExpandArrowClickWithModifiers(e: MouseEvent, treePath: bigint[]) { |
| LOW | frontend/src/components/floating-menus/MenuList.svelte | 94 | async function watchHighlightedWithSearch(filteredEntries: MenuListEntry[][], open: boolean) { |
| LOW | frontend/src/components/window/Panel.svelte | 311 | function calculateForeignInsertionIndex(pointerX: number, targetPanelId: string, tabBarDiv: HTMLDivElement) { |
| LOW | frontend/src/components/views/Graph.svelte | 47 | function exportsToEdgeTextInputWidth() { |
| LOW | frontend/src/components/views/Graph.svelte | 57 | function importsToEdgeTextInputWidth() { |
| LOW | frontend/src/components/views/Graph.svelte | 67 | function setEditingImportNameIndex(index: number, currentName: string) { |
| LOW | frontend/src/components/views/Graph.svelte | 72 | function setEditingExportNameIndex(index: number, currentName: string) { |
| LOW | frontend/src/components/widgets/WidgetSpan.svelte | 64 | function widgetValueCommitAndUpdate(widgetIndex: number, value: unknown, resendWidget: boolean) { |
| LOW | …ntend/src/components/widgets/inputs/NumberInput.svelte | 145 | function commitTransactionIfInProgress() { |
| LOW | …ontend/src/components/widgets/inputs/CurveInput.svelte | 75 | function handleManipulatorPointerDown(e: PointerEvent, i: number) { |
| LOW | …ontend/src/components/widgets/inputs/CurveInput.svelte | 95 | function getSvgPositionFromPointerEvent(e: PointerEvent): [number, number] | undefined { |
| LOW | website/static/js/template/book.js | 55 | function listenForClickToOpenOrCloseTOC() { |
| LOW | website/static/js/component/image-comparison.js | 6 | function initializeImageComparison() { |
| LOW | website/static/js/component/carousel.js | 288 | function updateVideoSyncForTransitions(carousel, videos) { |
| Severity | File | Line | Snippet |
|---|---|---|---|
| CRITICAL | editor/src/test_utils.rs | 162 | self.editor.dispatcher.message_handlers.portfolio_message_handler.active_document().unwrap() |
| CRITICAL | editor/src/test_utils.rs | 166 | self.editor.dispatcher.message_handlers.portfolio_message_handler.active_document_mut().unwrap() |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | node-graph/node-macro/src/parsing.rs | 275 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 290 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 304 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 321 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 333 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 348 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 359 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 370 | // Example usage: |
| LOW | node-graph/node-macro/src/parsing.rs | 385 | // Example usage: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | frontend/src/utility-functions/keyboard-entry.ts | 28 | // Eventually we will need a more robust system based on a giant database of keyboard layouts from all around the world. |
| MEDIUM | frontend/src/components/panels/Document.svelte | 333 | // This isn't very clean but it's good enough for now until we need more icons, then we can build something more robus |
| MEDIUM | …olio/document/data_panel/data_panel_message_handler.rs | 659 | // TODO: Make this robust for large u64 values that don't fit in f64 (above roughly 2^53). Perhaps using a bigint kind |
| MEDIUM | node-graph/graphene-cli/src/main.rs | 232 | // Since the CLI doesn't have the document node definitions, a less robust method of just patching the inputs is used |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | .github/workflows/website.yml | 52 | - name: 🦀 Produce auto-generated code docs data |
| HIGH | .github/workflows/build.yml | 266 | - name: 📃 Trigger website rebuild if auto-generated code docs are stale |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | .github/workflows/check.yml | 11 | # Check if CI can be skipped (for merge queue deduplication) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | node-graph/nodes/gstd/src/text.rs | 16 | #[default("Lorem ipsum")] |