diff --git a/src/DebugBar/DataCollector/DatasetCollector.php b/src/DebugBar/DataCollector/DatasetCollector.php new file mode 100644 index 0000000..3bbfcda --- /dev/null +++ b/src/DebugBar/DataCollector/DatasetCollector.php @@ -0,0 +1,56 @@ + array( + "icon" => "history", + "title" => "Requests", + "widget" => 'PhpDebugBar.Widgets.DatasetListWidget', + "default" => "{}", + "position" => "right" + ) + ); + } + + function getAssets() + { + return []; + } +} diff --git a/src/DebugBar/JavascriptRenderer.php b/src/DebugBar/JavascriptRenderer.php index 9539630..0777f70 100644 --- a/src/DebugBar/JavascriptRenderer.php +++ b/src/DebugBar/JavascriptRenderer.php @@ -11,6 +11,7 @@ namespace DebugBar; use DebugBar\DataCollector\AssetProvider; +use DebugBar\DataCollector\DatasetCollector; use DebugBar\DataCollector\Renderable; /** @@ -1124,7 +1125,8 @@ class JavascriptRenderer } } } - $controls = array_merge($widgets, $this->controls); + + $controls = array_merge($widgets, $this->controls, (new DatasetCollector())->getWidgets()); foreach (array_filter($controls) as $name => $options) { $opts = array_diff_key($options, array_flip($excludedOptions)); @@ -1133,12 +1135,13 @@ class JavascriptRenderer if (!isset($opts['title'])) { $opts['title'] = ucfirst(str_replace('_', ' ', $name)); } - $js .= sprintf("%s.addTab(\"%s\", new %s({%s%s}));\n", + $js .= sprintf("%s.addTab(\"%s\", new %s({%s%s}), \"%s\");\n", $varname, $name, isset($options['tab']) ? $options['tab'] : 'PhpDebugBar.DebugBar.Tab', substr(json_encode($opts, JSON_FORCE_OBJECT), 1, -1), - isset($options['widget']) ? sprintf('%s"widget": new %s()', count($opts) ? ', ' : '', $options['widget']) : '' + isset($options['widget']) ? sprintf('%s"widget": new %s()', count($opts) ? ', ' : '', $options['widget']) : '', + isset($options['position']) ? $options['position'] : 'left' ); } elseif (isset($options['indicator']) || isset($options['icon'])) { $js .= sprintf("%s.addIndicator(\"%s\", new %s(%s), \"%s\");\n", diff --git a/src/DebugBar/Resources/debugbar.js b/src/DebugBar/Resources/debugbar.js index 55c7b9d..668b417 100644 --- a/src/DebugBar/Resources/debugbar.js +++ b/src/DebugBar/Resources/debugbar.js @@ -544,13 +544,6 @@ if (typeof(PhpDebugBar) == 'undefined') { }); }); - // select box for data sets - this.$datasets = $('