Add refresh input to ProjectLoaderDynamic to force re-fetch
Changing the refresh value triggers the node to re-fetch keys from the API, picking up any new or modified fields in the data. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -138,6 +138,7 @@ class ProjectLoaderDynamic:
|
|||||||
"project_name": ("STRING", {"default": "", "multiline": False}),
|
"project_name": ("STRING", {"default": "", "multiline": False}),
|
||||||
"file_name": ("STRING", {"default": "", "multiline": False}),
|
"file_name": ("STRING", {"default": "", "multiline": False}),
|
||||||
"sequence_number": ("INT", {"default": 1, "min": 1, "max": 9999}),
|
"sequence_number": ("INT", {"default": 1, "min": 1, "max": 9999}),
|
||||||
|
"refresh": ("INT", {"default": 0, "min": 0, "max": 9999}),
|
||||||
},
|
},
|
||||||
"optional": {
|
"optional": {
|
||||||
"output_keys": ("STRING", {"default": ""}),
|
"output_keys": ("STRING", {"default": ""}),
|
||||||
@@ -152,7 +153,7 @@ class ProjectLoaderDynamic:
|
|||||||
OUTPUT_NODE = False
|
OUTPUT_NODE = False
|
||||||
|
|
||||||
def load_dynamic(self, manager_url, project_name, file_name, sequence_number,
|
def load_dynamic(self, manager_url, project_name, file_name, sequence_number,
|
||||||
output_keys="", output_types=""):
|
refresh=0, output_keys="", output_types=""):
|
||||||
# Fetch keys metadata (includes total_sequences count)
|
# Fetch keys metadata (includes total_sequences count)
|
||||||
keys_meta = _fetch_keys(manager_url, project_name, file_name, sequence_number)
|
keys_meta = _fetch_keys(manager_url, project_name, file_name, sequence_number)
|
||||||
if keys_meta.get("error") in ("http_error", "network_error", "parse_error"):
|
if keys_meta.get("error") in ("http_error", "network_error", "parse_error"):
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ app.registerExtension({
|
|||||||
|
|
||||||
// Auto-refresh with 500ms debounce on widget changes
|
// Auto-refresh with 500ms debounce on widget changes
|
||||||
this._refreshTimer = null;
|
this._refreshTimer = null;
|
||||||
const autoRefreshWidgets = ["project_name", "file_name", "sequence_number"];
|
const autoRefreshWidgets = ["project_name", "file_name", "sequence_number", "refresh"];
|
||||||
for (const widgetName of autoRefreshWidgets) {
|
for (const widgetName of autoRefreshWidgets) {
|
||||||
const w = this.widgets?.find(w => w.name === widgetName);
|
const w = this.widgets?.find(w => w.name === widgetName);
|
||||||
if (w) {
|
if (w) {
|
||||||
|
|||||||
Reference in New Issue
Block a user