Document Directory
Typical tag name: doc-dir
Exported class: DocDirectory
Inheritance: DocDirectory <-- Directory <-- SKUIBase <-- (imm-dom stack)
Simple Document viewer/chooser capable of allowing user to select Documents with filters. The Documents which are available are loaded from the directory model. Any Documents you wish to display but be disabled may be supplied with the preselected property. Submit selection button label may be configured.
Required Assets
- imm-dom, i18n
- sk.css
External Requirements
- Open Props
- Font Awesome 6
- Shoelace
WC Dependencies
- DirectoryModel
- DocDirectoryView
- DocDirEntrySelectable
- DocDirEntryStatic
API
Attributes
| Attribute | Default | Enumerators | Usage |
|---|---|---|---|
ui |
single |
single, multi |
Sets single or multi-select mode. In single-select mode, double click will trigger the submit event. |
use-qx |
dir |
N/A | Changes imm-dom QX key for model. |
tag |
doc-dir-entry if selectable, otherwise doc-dir-entry-static |
N/A | Web component tag for each displayed Document. |
evt-name-clicked |
interaction-doc-clicked |
N/A | Event name to emit when a Document is clicked. |
evt-name-dbl-clicked |
interaction-doc-dbl-clicked |
N/A | Event name to emit when a Document is double clicked (NOTE: Also ensures Document is selected). |
evt-name-selected |
interaction-doc-selected |
N/A | Event name to emit when an Document is selected. |
evt-name-saved |
user-doc-save-selection |
N/A | Event name to emit when user chooses to submit selected Documents. |
show-count |
true | N/A | Shows count in the footer (and total selected if can-select). |
can-select |
false | N/A | Changes the tag to a selectable view component unless tag is overwritten. |
save-btn-text |
Save Selection |
N/A | Text for button which triggers saved event. |
has-tool-edit |
false |
Boolean | Pass attribute to instantiation of tag web component (by default shows DocCreateForm with edit set to Document HK1). |
has-tool-delete |
false |
Boolean | Pass attribute to instantiation of tag web component (by default shows DocDeleteBtn). |
Properties
| Property | Type | Default | Usage |
|---|---|---|---|
preselected |
enumerable | set | Documents to disable from selection. |
Events
| Event | Detail | Usage |
|---|---|---|
interaction-doc-clicked |
doc_dir_entry |
User clicked on an entry. |
interaction-doc-dbl-clicked |
doc_dir_entry |
User clicked on an entry. |
interaction-doc-selected |
map( key -> record ) |
User selected an entry. |
user-doc-save-selection |
map( key -> record ) |
User confirmed submitting all selected records. |
Methods
| Method | Arguments | Usage |
|---|---|---|
| (None.) |
Slots
| Slot | Usage |
|---|---|
header |
Content prior to directory entries (used internally for filter). |
footer |
Content after directory entries (used internally for counts). |
CSS Parts
| Part | Usage |
|---|---|
| (None.) |
Example
<link rel="stylesheet" type="text/css" href="/css/sk-root.css">
<script type=module src='/cdn/@encipher-sk/ivcore/esm/auto.js'></script>
<div class='example'>
<ivc-i18n></ivc-i18n>
<ivc-zs reload-ws></ivc-zs>
<doc-dir></doc-dir>
</div>