!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/wincloud_gateway/node_modules/strapi-plugin-content-manager/admin/src/containers/Main/   drwxr-xr-x
Free 13.23 GB of 57.97 GB (22.82%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     index.js (2.9 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
import React, { useEffect } from 'react';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import { bindActionCreators, compose } from 'redux';
import { Switch, Route } from 'react-router-dom';
import {
  CheckPagePermissions,
  LoadingIndicatorPage,
  NotFound,
  request,
} from 'strapi-helper-plugin';
import { DndProvider } from 'react-dnd';
import HTML5Backend from 'react-dnd-html5-backend';
import pluginId from '../../pluginId';
import pluginPermissions from '../../permissions';
import { getRequestUrl } from '../../utils';
import DragLayer from '../../components/DragLayer';
import CollectionTypeRecursivePath from '../CollectionTypeRecursivePath';
import ComponentSettingsView from '../ComponentSetttingsView';
import SingleTypeRecursivePath from '../SingleTypeRecursivePath';
import { getData, getDataSucceeded, resetProps } from './actions';
import makeSelectMain from './selectors';

function Main({ getData, getDataSucceeded, isLoading, resetProps }) {
  useEffect(() => {
    const abortController = new AbortController();
    const { signal } = abortController;

    const fetchData = async signal => {
      getData();

      try {
        const [{ data: components }, { data: models }] = await Promise.all(
          ['components', 'content-types'].map(endPoint =>
            request(getRequestUrl(endPoint), { method: 'GET', signal })
          )
        );

        getDataSucceeded(models, components);
      } catch (err) {
        console.error(err);
        strapi.notification.error('notification.error');
      }
    };

    fetchData(signal);

    return () => {
      abortController.abort();
      resetProps();
    };
  }, [getData, getDataSucceeded, resetProps]);

  if (isLoading) {
    return <LoadingIndicatorPage />;
  }

  return (
    <DndProvider backend={HTML5Backend}>
      <DragLayer />

      <Switch>
        <Route path={`/plugins/${pluginId}/components/:uid/configurations/edit`}>
          <CheckPagePermissions permissions={pluginPermissions.componentsConfigurations}>
            <ComponentSettingsView />
          </CheckPagePermissions>
        </Route>
        <Route
          path={`/plugins/${pluginId}/collectionType/:slug`}
          component={CollectionTypeRecursivePath}
        />
        <Route path={`/plugins/${pluginId}/singleType/:slug`} component={SingleTypeRecursivePath} />
        <Route path="" component={NotFound} />
      </Switch>
    </DndProvider>
  );
}

Main.propTypes = {
  getData: PropTypes.func.isRequired,
  getDataSucceeded: PropTypes.func.isRequired,
  isLoading: PropTypes.bool.isRequired,
  resetProps: PropTypes.func.isRequired,
};

const mapStateToProps = makeSelectMain();

export function mapDispatchToProps(dispatch) {
  return bindActionCreators(
    {
      getData,
      getDataSucceeded,
      resetProps,
    },
    dispatch
  );
}
const withConnect = connect(mapStateToProps, mapDispatchToProps);

export default compose(withConnect)(Main);

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0044 ]--