import json from config_utils import collect_layout_tokens, load_datasource from factory import load_json, build_table, table_token_key, iter_table_items, PAGES_DIR def collect_tokens(cfg): tokens = collect_layout_tokens(cfg) tokens['PROTOCOL_OPTIONS'] = json.dumps([ {'value': 'tcp', 'label': 'TCP'}, {'value': 'udp', 'label': 'UDP'}, {'value': 'both', 'label': 'TCP/UDP'}, ]) content = load_json(f'{PAGES_DIR}/portforwarding/content.json') for table_item in iter_table_items(content.get('items', [])): ds = table_item.get('datasource', '') tokens[table_token_key(ds)] = build_table(table_item, tokens, load_datasource(ds)) return tokens