/* render.js Renders a directory listing into the three view modes. Structure: every entry is first normalised into a descriptor by buildItemDescriptor(), then handed to one of three small template functions (renderListItem / renderGridItem / renderDetailsRow). Previously the folder loop and the file loop each carried their own copy of all three templates - six near-identical branches - so any change had to be made six times. Icon resolution order for a file, highest priority first: 1. a real thumbnail, painted in later by thumbnail.js 2. the shortcut's own icon, for .shortcut files 3. a module-registered icon from extIconRegistry 4. the bundled PNG icon set for known extensions 5. FileThumb's drawn glyph, for extensions nothing else recognises Part of the ArozOS File Manager. Loaded as a plain script from file_explorer.html - see the