-Create VideoControls script for agnostic control of video elements
-Update classes to use VideoControls where appropriate
-Create jnodes_image_drawer_payload payload for drag and drop from image drawer to upload nodes
-Add href to fileInfo on imageElement creation to facilitate payload
-Add option for playback rate (speed)
-Add hotkeys for changing playback rate ( , and . )
-Add labeled number input widget
-Inherit labeled widget types from base class
-Add option for onchange to above base class
-Clamp numbers when setting numeric values on videos
-Add some helper functions to video elements
-Remove bPropagateOnChange, roll functionality into forEachElement delegate
-Add widgetType parameter to inform the widget type to be created
-Removed unnecessary and incorrect comments
-Add ogg support
-Set video parameters before load (fixes autoplay)
-Remove unnecessary OR
-Rename preview widget
-Remove widget video typing (not necessary)
-Roll UiSettings into SettingsManager
-Account for ConfigSettings that are objects by loading default values then loading config value son top
-Set ConfigSetting values using JSON.stringify
-Separate flyout generation into generic function
-Add video settings flyout in subfolderexplorer contexts
-Add option to control slider range value label fractional digits
-Update default slider range values to reflect 1-100 values rather than 0-1
-Rename ImageDrawerContext description to tooltip
-Update 'flex' alignment to 'normal' in context toolbars
-Automatically cancel async js operations when switching contexts
-blur or unfocus toolbar buttons on click to avoid accidental clearing or refreshing
-Get setting_ModelCardAspectRatio value as number
-Implement method to avoid lazy loading of images
-Lay some groundwork for unimplemented cancellation requests for python tasks
-Separated image list and search variables and functions to a separate script, ImageListAndSearch
-Update extra networks toolbar buttons to have a bespoke class and use specific cursor styles
-Update ImageElements 'complete' to 'bComplete' to differentiate from the img property
-Add lastSeekTime property initialization to img element
-Don't run onload if image element is already bComplete
-Sort and execute search after image is loaded (if requested). This allows search and sort to work with all of the meta data in the image.
-Click videos to pause/play
-Double click videos to toggle fullscreen
-Mute videos based on video options
-Set video volume from video options flyout
-Use scrollwheel on video to seek forward or back (seek direction depends on video options)
-Update imports
This functionality existed before with just shift, but shift alone is used for many things in the graph. Instead, ctrl+shift will pan the graph at an accelerated rate.
-Add option to prepend value label to slider range widget factory
-Iteratively generify flyout code so it can be more easily separated from the imagedrawer
-Separated flyout generation into its own function in SettingsManager
-Attempt to mitigate issue with the height and width being too low and clipping drawer widgets
-Make ConfigSetting getValue and setValue functions private
-Add labeled checkbox/toggle factory
-Update some checkboxes to use the factory, probably exist some more
-Unify video options (needs an interface to interact with though)
-Preload metadata for videos now that we lazy load them
-Made some names more clear
-Separate DrawerSize into DrawerWidth and DrawerHeight
-Change Drawer Location to Drawer Anchor, now 'top-left', 'bottom-left', 'top-right', 'bottom-right'
-Add height and width to context cache class
-Image width and contained text size now based on drawer width
-Cap model info box at 90% in model contexts
-Made flyout options into a table
-Flyout button now circular border with an eyeball emoji (denoting 'view options')
-Moved DrawerAnchor widget creation to UISettings.js so UI Settings and view options flyout are now using the same widget and underlying functions
-Moved some inlined CSS out to CSS file to better facilitate different drawer anchors
-Anchor close button and flyout button to the right side of the screen when the Drawer anchor is right-affined
-Update img-sz to column-count var
-Minimum width in left and right mode is now fit to the content inside of it
-Fixed anchoring of sizing menu flyout in top and bottom modes
-Made all images and videos a uniform width based on the column count and max-size
-Add error handling in ImageAndVideoObserver, remove aspect ratio patch
-Add helper function to create labeled sliders or ranges
-linter adherence updates
-Add aspect ratio slider for model contexts, affects model card aspect ratio
-Add class name to extra network cards
-Fix font scaling on model cards
-Improve info box anchoring and sizing on model cards
-Improve CSS declarations
-Fix auto aspect ratio for image and video placeholders
-Added drag functions to lora and embeddings buttons to allow dropping loras into the canvas to create a node or either model type into textareas to insert the model as text ("<lora>" or "embedding"). the drop caret is misleading - click or make a selection first in the taget textarea then drag the button into it to insert at a specific location.
-Move undo-able text insertion to textareas into its own utility function
-Clean up imports
-Change some names for clarity and capitalization linter
-Add SettingsManager to handle Config Settings
-Move some Utilities to SettingsManager
-Added images and videos are observed when they are added to the image list and unobserved when removed
-Add video support in feed and other image lists
-Optimized local image/video loading (for input and output folders and the like)
-Restore last subfolder selection on refresh of folder explorer context if possible
-Add batching code path for image loading (unused for now, needs tuning)
-Add option to drag and drop loras into graph to create lora node automatically
-Images now load in on demand (lazy loading) rather than all at once
-Try/Catch reading of image metadata
-Disable drag/drop for image href, fix issue where dragging image makes redundant toolbar button
-Add UiSettings script to handle adding UI Settings