1.1.14 • Published 12 days ago

@bigbinary/neeto-api-keys-frontend v1.1.14

Weekly downloads
-
License
UNLICENSED
Repository
-
Last release
12 days ago

neeto-api-keys-nano

The neeto-api-keys-nano facilitates the administration of API keys within neeto applications. The nano exports the @bigbinary/neeto-api-keys-frontend NPM package and neeto-api-keys-engine Rails engine for development.

Contents

  1. Development with Host Application

  2. Instructions for Publishing

Development with Host Application

Engine

The engine is used to manage API keys across neeto products. It also provides concerns to handle common logic related to NeetoApiKeysEngine::ApiKey model.

Installation

  1. Add this line to your application's Gemfile:

    source "NEETO_GEM_SERVER_URL" do
      # ..existing gems
    
      gem 'neeto-api-keys-engine'
    end
  2. And then execute:

    bundle install
  3. Add this line to your application's config/routes.rb file:
    mount NeetoApiKeysEngine::Engine => "/neeto_api_keys_engine"
  4. Run the command to bring in all migrations required from the engine to the host application:
    bundle exec rails neeto_api_keys_engine:install:migrations
  5. Add the migrations to the database:
    bundle exec rails db:migrate

Usage

  1. Add NeetoApiKeysEngine::ApiKeysHandler concern to organization model.

    class Organization < ActiveRecord::Base
      # Include the following concern
      include NeetoApiKeysEngine::ApiKeysHandler

    The NeetoApiKeysEngine::ApiKeysHandler concern is a module that provides functionality related to API keys within the host application. It establishes associations, methods, and logic for working with API keys.

  2. Add the NeetoApiKeysEngine::Authenticatable concern to the controller that requires API key authentication. Utilize the neeto_api_keys_authenticate_using_api_key method within a before_action callback to authenticate the necessary actions.

    class Api::V1::PublicApiController < ActionController::Base
      # Include the following concern and callback
      include NeetoApiKeysEngine::Authenticatable
    
      before_action :neeto_api_keys_authenticate_using_api_key

    By default, this method expects the API key in the "X-Api-Key" key in the header. For different keys or implementations, define a token method in the controller that returns the token.

    Example:

    def token
      request.headers["neeto-Api-Key"]
    end

Frontend package

Installation

Install the latest NeetoApiKeysNano package using the below command:

yarn add @bigbinary/neeto-api-keys-frontend

Instructions for development

Check the Frontend package development guide for step-by-step instructions to develop the frontend package.

Components

ApiKeys(source code)

This component is used for managing API keys in a web application. It provides functionality for viewing, creating, updating, and deleting API keys. The component includes a table for displaying API key data, as well as options to add new keys, edit existing ones, and delete keys. It also features a search bar for easily finding specific API keys.

Props
  • noDataProps: Props for handling scenarios when there is no data to display.
  • headerProps: Props for configuring the header section of the component.
Usage
import React from "react";

import { ApiKeys } from "@bigbinary/neeto-api-keys-frontend";

const App = () => <ApiKeys />;

export default App;

Instructions for Publishing

Consult the building and releasing packages guide for details on how to publish.

1.1.14

12 days ago

1.1.13

23 days ago

1.1.12

1 month ago

1.1.11

2 months ago

1.1.10

2 months ago

1.1.9

2 months ago

1.1.8

2 months ago

1.1.7

2 months ago

1.1.6

3 months ago

1.1.5

3 months ago

1.1.4

3 months ago

1.1.3

3 months ago

1.1.2

3 months ago

1.1.1

3 months ago

1.1.0

4 months ago

1.0.15

5 months ago

1.0.14

5 months ago

1.0.13

6 months ago

1.0.12

6 months ago

1.0.11

6 months ago

1.0.10

6 months ago

1.0.9

7 months ago

1.0.8

7 months ago

1.0.7

7 months ago

1.0.6

7 months ago

1.0.5

7 months ago

1.0.4

7 months ago

1.0.3

7 months ago

1.0.2

8 months ago

1.0.1

8 months ago