npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@antopolis/antopolis-adminapp-component-library

v1.0.6

Published

This is a component library for the antopolis admin application

Downloads

11

Readme

Anthill Component Library

Overview

The Anthill Component Library is a reusable component library designed for the Antopolis Admin Application. It provides a structured, modular approach to UI development, ensuring consistency and maintainability across projects.

Installation

Token Installation Guide

🧪 Installing the Token

To use the private package, you must configure your .npmrc file or use the command line to authenticate.

Method 1: Using .npmrc File

  1. Open or create a .npmrc file in the root directory of your project.

  2. Add the following line to the file, replacing YOUR_TOKEN_HERE with your actual token:

    //registry.npmjs.org/:_authToken=YOUR_TOKEN_HERE
  3. Then

npm install @antopolis/antopolis-adminapp-component-library

📦 Installing with Token via Command Line

Method 2: Using Command Line

Alternatively, you can install your private npm package directly from the command line by running:

npm install your-private-package --//registry.npmjs.org/:_authToken=YOUR_TOKEN_HERE



## Usage
To use a component from the library, import it as shown below:

```jsx
import { CLRouterProvider } from "@antopolis/antopolis-adminapp-component-library/utils";

Folder Structure

The library follows a structured folder hierarchy to maintain modularity:

📁src
 ├── 📁Components
 │   ├── 📁Elements
 │   ├── 📁Layouts
 │   ├── 📁Sections
 │   ├── 📁ui
 │
 ├── 📁Contexts
 ├── 📁Screens
 ├── 📁utils
 ├── App.jsx
 ├── main.jsx

Main Entry Points

| Module | Entry Path | |-----------|----------------------------------------| | Index | ./src/main.jsx | | Elements | ./src/Components/Elements/Elements.jsx | | UI | ./src/Components/ui/ui.jsx | | Layouts | ./src/Components/Layouts/Layouts.jsx | | Contexts | ./src/Contexts/Contexts.jsx | | Screens | ./src/Screens/Screens.jsx | | Sections | ./src/Components/Sections/Sections.jsx | | Utils | ./src/utils/utils.js |

ESLint Configuration

To avoid ESLint errors while working with the component library, update your .eslintrc.js with the following settings:

settings: {
  react: { version: "detect" },
  "import/resolver": {
    node: {
      extensions: [".js", ".jsx", ".ts", ".tsx"],
      moduleDirectory: ["node_modules", "src"],
      paths: ["src"]
    },
    alias: {
      map: [["antopolis-adminapp-component-library", "./node_modules/antopolis-adminapp-component-library"]],
      extensions: [".js", ".jsx", ".ts", ".tsx", ".json"]
    }
  }
}

Exported Modules

The library is exported as CommonJS format (cjs). The following modules can be imported directly:

"exports": {
  ".": "./dist/index.js",
  "./elements": "./dist/elements.js",
  "./utils": "./dist/utils.js",
  "./screen": "./dist/screens.js",
  "./section": "./dist/section.js",
  "./contexts": "./dist/contexts.js",
  "./layout": "./dist/layout.js",
  "./ui": "./dist/ui.js"
}

Import Formats

You can import components as follows:

Elements

import { Buttons } from "@antopolis/antopolis-adminapp-component-library/elements";

UI Components

import { Button, Card } from "@antopolis/antopolis-adminapp-component-library/ui";

Layouts

import { CLTable, Form } from "@antopolis/antopolis-adminapp-component-library/layout";

Screens

import { AuthScreen } from "@antopolis/antopolis-adminapp-component-library/screen";

Contexts

import { AuthContext } from "@antopolis/antopolis-adminapp-component-library/contexts";

Utilities

import { useToast } from "@antopolis/antopolis-adminapp-component-library/utils";

Project Components

This project structure contains a variety of UI components, layouts, contexts, screens, and utilities used for building the application.

📁 Components

  • Elements: Contains reusable elements like buttons, search inputs, form controls, headers, and modals.
  • Layouts: Includes layout components like tables, forms, cards, and pagination.
  • Sections: Contains section-based components like sidebars and profile-related elements.
  • UI: Contains basic UI elements like buttons, cards, checkboxes, calendars, inputs, and more.

📁 Elements

Contains individual UI components, each in its own folder with related sub-components and utilities:

  • ArchiveItem:

    • ArchiveItem.jsx: Component to display an archived item.
  • Buttons:

    • BackButton:
      • BackButton.jsx: A back navigation button.
    • Buttons.jsx: Parent component for all button types.
    • CrudActionButtons:
      • CrudActionButtons.jsx: Buttons for CRUD operations.
      • CrudButtons:
        • EditActionButton.jsx: Edit action button.
        • ExtraActionButton.jsx: Extra action button.
        • ToggleArchiveButton.jsx: Button to toggle archive state.
        • ViewDetailsButton.jsx: Button to view details.
  • CLSearch:

    • CLSearch.jsx: Search component.
    • CLSearches.js: A file for handling search logic.
    • ResponsiveSearchInput.jsx: Search input component with responsiveness.
    • utils:
      • useDebounce.js: Hook to debounce search input.
  • CLTabs:

    • CLTabs.jsx: Tabs component.
    • CLTabsExport.jsx: Component for exporting tabs.
    • ResponsiveFilterTabs.jsx: Filter tabs with responsiveness.
  • Confirmation:

    • Confirmation.jsx: Confirmation modal component.
  • DataTableRowActions:

    • DataTableRowActions.jsx: Actions for data table rows.
  • Header:

    • Components:
      • DesktopLayout.jsx: Desktop layout component.
      • Heading.jsx: Heading component.
      • MobileActionButtons.jsx: Mobile action buttons.
    • Header.jsx: Main header component.
  • IconWithToolTip:

    • IconWithTooltip.jsx: Icon component with a tooltip.
  • ImageTextAvatar:

    • ImageTextAvatar.jsx: Avatar component with text.
  • Inputs: Contains various input components like text, color, number, date, etc.

    • ColorInput: ColorInput.jsx: Input for color selection.
    • CurrencyInput: CurrencyInput.jsx: Input for currency amounts.
      • utils:
        • handleChange.js: Utility to handle changes in currency input.
    • DateInput: DateInput.jsx: Input for date selection.
    • DatePicker: DatePicker.jsx: Date picker component.
      • utils:
        • datePickerUtils.js: Utilities for date picker.
    • EmailInput: EmailInput.jsx: Input for email addresses.
    • ImageInput:
      • ImageCropper: ImageCropper.jsx: Image cropping component.
        • utils:
          • cropImage.js: Image crop utility.
      • ImageInput.jsx: Main image input component.
      • Utils:
        • imageUtils.js: Image-related utilities.
      • ImageUploadField: ImageUploadField.jsx: Field for image upload.
        • Utils:
          • ImageUploadUtils.js: Utilities for image upload.
    • InputBoilerPlate:
      • InputBoilerPlate.jsx: Boilerplate input component.
      • InputLabel.jsx: Label for input components.
  • LazyLoad:

    • LazyLoad.jsx: Lazy loading component.
  • Loading:

    • ButtonLoader.jsx: Loading indicator for buttons.
    • DataLoader.jsx: General data loader component.
    • Loading.css: CSS file for loading animations.
    • Loading.jsx: Main loading component.
  • LogoTittle:

    • LogoTitle.jsx: Logo and title component.
  • Modal:

    • Modal.jsx: Modal component for displaying content.
  • MonthSelector:

    • MonthSelector.jsx: Component for selecting a month.
  • SelectFiltering:

    • SelectFiltering.jsx: Filterable select input component.
  • ViewDetailsModal:

    • Components:
      • Components:
        • FieldDisplay.jsx: Displays fields in the modal.
      • ViewDetails.jsx: Main component for view details modal.
    • ViewDetailsModal.jsx: Modal for displaying details.
  • YearSelector:

    • YearSelector.jsx: Component for selecting a year.

📁 Layouts

Contains layout components used for structuring the page:

  • CardLayout:

    • CardLayout.jsx: Layout for displaying content in card format.
  • CLTable:

    • CLTable.jsx: Main table component.
    • CLTables.jsx: Wrapper for multiple tables.
    • Components:
      • CLTableActionButtons:
        • CLTableActionButton.jsx: Action button for the table.
        • CLTableActionButtons.jsx: Wrapper for table action buttons.
      • CLTableBody:
        • CLTableBody.jsx: Table body component.
      • CLTableCells:
        • CLTableCell.jsx: Table cell component.
        • CLTableDate.jsx: Date cell for the table.
        • CLTableDateTimeCell.jsx: Date-time cell.
        • CLTableImageCell.jsx: Image cell.
        • CLTableTime.jsx: Time cell.
      • CLTableFooter:
        • CLTableFooter.jsx: Table footer component.
      • CLTableHeader:
        • CLTableHead.jsx: Table header.
        • CLTableHeader.jsx: Main header for the table.
      • CLTableRow:
        • CLTableRow.jsx: Table row component.
      • Pagination:
        • CLPagination.jsx: Pagination component.
        • utils:
          • getPaginationItems.jsx: Utility for pagination.
          • pagination.js: JavaScript file for pagination logic.
  • Form:

    • Form.jsx: Form component.
    • FormWrapper.jsx: Wrapper component for forms.
  • LazyLoad:

    • LazyLoad.jsx: Component for lazy loading content.

📁 Sections

Contains sections for page layout:

  • Sidebar:
    • components:
      • DesktopSideBar:
        • components:
          • SidebarCollapser.jsx: Collapsing sidebar component.
        • DesktopSideBar.jsx: Sidebar for desktop view.
      • MobileNavbar: MobileNavbar.jsx: Navbar for mobile view.
      • Shared:
        • ProfileSidebar.jsx: Profile sidebar component.
        • SidebarItem.jsx: Sidebar item.
        • SidebarLogo.jsx: Sidebar logo.
    • Sidebar.jsx: Main sidebar component.
    • utils:
      • useSidebar.jsx: Sidebar hook.
      • useSidebarLocalStorage.js: Local storage utilities for sidebar.
      • useSidebarResize.js: Hook for sidebar resize logic.

📁 Contexts

Contains the context providers for global state management:

  • AuthContext:

    • AuthContext.jsx: Auth context provider.
    • hooks:
      • useAuth.jsx: Hook for auth-related operations.
    • utils:
      • getStoredMember.js: Utility for fetching stored user data.
      • handleAuthError.js: Error handling for auth.
      • handleRegister.js: Registration handler.
      • login.js: Login logic.
      • logout.js: Logout logic.
  • ThemeContext:

    • ThemeContext.jsx: Theme context provider.

📁 Screens

Contains screen components used for different views and authentication screens:

  • AuthScreen:
    • AuthScreen.jsx: Auth screen component.
    • AuthScreens.jsx: Wrapper for all auth screens.
    • ForgotPassword:
      • ForgotPassForm.jsx: Form for forgot password.
      • ForgotPassword.jsx: Forgot password page component.
      • utils:
        • handleForgotPassword.js: Forgot password logic.
    • Login:
      • Login.jsx: Login page component.
      • LoginForm.jsx: Login form.
      • utils:
        • handleLogin.js: Login logic.
    • RecoverPassword:
      • RecoverPassForm.jsx: Recovery password form.
      • RecoverPassword.jsx: Recover password page component.
      • utils:
        • handleRecoveryPassword.js: Password recovery logic.
    • Register:
      • SignUpHeader.jsx: Header for signup.
      • SignUpForm.jsx: Sign-up form.
      • utils:
        • handleRegister.js: Registration logic.

Utility Files

  • capitalize.js: A utility function to capitalize the first letter of a string.
  • createFormData.js: A utility function to create FormData objects, usually for file uploads or form submissions.
  • getPermissionBasedLinks.js: A function to generate permission-based links based on user roles and permissions.
  • handleFormDataSubmission.js: A function to handle form data submission, including validation and sending data to the server.
  • permissionMap.js: A mapping of user permissions to corresponding actions or access.
  • utils.js: A general utilities file that contains various helper functions used across the project.