mirror of
https://github.com/Snigdha-OS/documentation.git
synced 2025-09-09 19:44:56 +02:00
60 lines
1.7 KiB
JavaScript
60 lines
1.7 KiB
JavaScript
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*/
|
|
import React from 'react';
|
|
import DebugLayout from '@theme/DebugLayout';
|
|
import DebugJsonView from '@theme/DebugJsonView';
|
|
function PluginInstanceContent({pluginId, pluginInstanceContent}) {
|
|
return (
|
|
<section style={{marginBottom: 30}}>
|
|
<code>{pluginId}</code>
|
|
<DebugJsonView src={pluginInstanceContent} collapseDepth={2} />
|
|
</section>
|
|
);
|
|
}
|
|
function PluginContent({pluginName, pluginContent}) {
|
|
return (
|
|
<section style={{marginBottom: 60}}>
|
|
<h3>{pluginName}</h3>
|
|
<div>
|
|
{Object.entries(pluginContent)
|
|
// Filter plugin instances with no content
|
|
.filter(([, pluginInstanceContent]) => !!pluginInstanceContent)
|
|
.map(([pluginId, pluginInstanceContent]) => (
|
|
<PluginInstanceContent
|
|
key={pluginId}
|
|
pluginId={pluginId}
|
|
pluginInstanceContent={pluginInstanceContent}
|
|
/>
|
|
))}
|
|
</div>
|
|
</section>
|
|
);
|
|
}
|
|
export default function DebugContent({allContent}) {
|
|
return (
|
|
<DebugLayout>
|
|
<h2>Plugin content</h2>
|
|
<div>
|
|
{Object.entries(allContent)
|
|
// Filter plugins with no content
|
|
.filter(([, pluginContent]) =>
|
|
Object.values(pluginContent).some(
|
|
(instanceContent) => !!instanceContent,
|
|
),
|
|
)
|
|
.map(([pluginName, pluginContent]) => (
|
|
<PluginContent
|
|
key={pluginName}
|
|
pluginName={pluginName}
|
|
pluginContent={pluginContent}
|
|
/>
|
|
))}
|
|
</div>
|
|
</DebugLayout>
|
|
);
|
|
}
|