@@ -18,6 +18,7 @@ const DEFAULT_PAGE_SIZE = 50;
1818export interface PluginConfig {
1919 openIriInNewWindow : boolean ;
2020 tableConfig : DataTables . Settings ;
21+ includeControls : boolean ;
2122 uriHrefAdapter ?: ( ( uri :string ) => string ) ;
2223 bindingSetAdapter ?: ( ( binding :Parser . Binding ) => Parser . Binding ) ;
2324}
@@ -123,7 +124,7 @@ export class TableX implements Plugin<PluginConfig> {
123124 onResize : ( ) => { } ;
124125 }
125126 | undefined ;
126- public helpReference = "https://triply.cc/docs/ yasgui#table " ;
127+ // public helpReference = "https://github.com/sparna-git/sparnatural- yasgui-plugins ";
127128 public label = "Table" ;
128129 public priority = 10 ;
129130
@@ -151,6 +152,7 @@ export class TableX implements Plugin<PluginConfig> {
151152
152153 public static defaults : PluginConfig = {
153154 openIriInNewWindow : true ,
155+ includeControls : false ,
154156 tableConfig : {
155157 dom : "tip" , // tip: Table, Page Information and Pager, change to ipt for showing pagination on top
156158 pageLength : DEFAULT_PAGE_SIZE , //default page length
@@ -418,45 +420,47 @@ export class TableX implements Plugin<PluginConfig> {
418420 this . tableControls = document . createElement ( "div" ) ;
419421 this . tableControls . className = "tableControls" ;
420422
421- // Compact switch
422- const toggleWrapper = document . createElement ( "div" ) ;
423- const switchComponent = document . createElement ( "label" ) ;
424- const textComponent = document . createElement ( "span" ) ;
425- textComponent . innerText = "Simple view" ;
426- addClass ( textComponent , "label" ) ;
427- switchComponent . appendChild ( textComponent ) ;
428- addClass ( switchComponent , "switch" ) ;
429- toggleWrapper . appendChild ( switchComponent ) ;
430- this . tableCompactSwitch = document . createElement ( "input" ) ;
431- switchComponent . addEventListener ( "change" , this . handleSetCompactToggle ) ;
432- this . tableCompactSwitch . type = "checkbox" ;
433- switchComponent . appendChild ( this . tableCompactSwitch ) ;
434- this . tableCompactSwitch . defaultChecked = ! ! this . persistentConfig . compact ;
435- this . tableControls . appendChild ( toggleWrapper ) ;
436-
437- // Ellipsis switch
438- const ellipseToggleWrapper = document . createElement ( "div" ) ;
439- const ellipseSwitchComponent = document . createElement ( "label" ) ;
440- const ellipseTextComponent = document . createElement ( "span" ) ;
441- ellipseTextComponent . innerText = "Ellipse" ;
442- addClass ( ellipseTextComponent , "label" ) ;
443- ellipseSwitchComponent . appendChild ( ellipseTextComponent ) ;
444- addClass ( ellipseSwitchComponent , "switch" ) ;
445- ellipseToggleWrapper . appendChild ( ellipseSwitchComponent ) ;
446- this . tableEllipseSwitch = document . createElement ( "input" ) ;
447- ellipseSwitchComponent . addEventListener ( "change" , this . handleSetEllipsisToggle ) ;
448- this . tableEllipseSwitch . type = "checkbox" ;
449- ellipseSwitchComponent . appendChild ( this . tableEllipseSwitch ) ;
450- this . tableEllipseSwitch . defaultChecked = this . persistentConfig . isEllipsed !== false ;
451- this . tableControls . appendChild ( ellipseToggleWrapper ) ;
452-
453- // Create table filter
454- this . tableFilterField = document . createElement ( "input" ) ;
455- this . tableFilterField . className = "tableFilter" ;
456- this . tableFilterField . placeholder = "Filter query results" ;
457- this . tableFilterField . setAttribute ( "aria-label" , "Filter query results" ) ;
458- this . tableControls . appendChild ( this . tableFilterField ) ;
459- this . tableFilterField . addEventListener ( "keyup" , this . handleTableSearch ) ;
423+ if ( this . config . includeControls ) {
424+ // Compact switch
425+ const toggleWrapper = document . createElement ( "div" ) ;
426+ const switchComponent = document . createElement ( "label" ) ;
427+ const textComponent = document . createElement ( "span" ) ;
428+ textComponent . innerText = "Simple view" ;
429+ addClass ( textComponent , "label" ) ;
430+ switchComponent . appendChild ( textComponent ) ;
431+ addClass ( switchComponent , "switch" ) ;
432+ toggleWrapper . appendChild ( switchComponent ) ;
433+ this . tableCompactSwitch = document . createElement ( "input" ) ;
434+ switchComponent . addEventListener ( "change" , this . handleSetCompactToggle ) ;
435+ this . tableCompactSwitch . type = "checkbox" ;
436+ switchComponent . appendChild ( this . tableCompactSwitch ) ;
437+ this . tableCompactSwitch . defaultChecked = ! ! this . persistentConfig . compact ;
438+ this . tableControls . appendChild ( toggleWrapper ) ;
439+
440+ // Ellipsis switch
441+ const ellipseToggleWrapper = document . createElement ( "div" ) ;
442+ const ellipseSwitchComponent = document . createElement ( "label" ) ;
443+ const ellipseTextComponent = document . createElement ( "span" ) ;
444+ ellipseTextComponent . innerText = "Ellipse" ;
445+ addClass ( ellipseTextComponent , "label" ) ;
446+ ellipseSwitchComponent . appendChild ( ellipseTextComponent ) ;
447+ addClass ( ellipseSwitchComponent , "switch" ) ;
448+ ellipseToggleWrapper . appendChild ( ellipseSwitchComponent ) ;
449+ this . tableEllipseSwitch = document . createElement ( "input" ) ;
450+ ellipseSwitchComponent . addEventListener ( "change" , this . handleSetEllipsisToggle ) ;
451+ this . tableEllipseSwitch . type = "checkbox" ;
452+ ellipseSwitchComponent . appendChild ( this . tableEllipseSwitch ) ;
453+ this . tableEllipseSwitch . defaultChecked = this . persistentConfig . isEllipsed !== false ;
454+ this . tableControls . appendChild ( ellipseToggleWrapper ) ;
455+
456+ // Create table filter
457+ this . tableFilterField = document . createElement ( "input" ) ;
458+ this . tableFilterField . className = "tableFilter" ;
459+ this . tableFilterField . placeholder = "Filter query results" ;
460+ this . tableFilterField . setAttribute ( "aria-label" , "Filter query results" ) ;
461+ this . tableControls . appendChild ( this . tableFilterField ) ;
462+ this . tableFilterField . addEventListener ( "keyup" , this . handleTableSearch ) ;
463+ }
460464
461465 // Create page wrapper
462466 const pageSizerWrapper = document . createElement ( "div" ) ;
0 commit comments