Skip to content

Tiny utility to create and extract rails guid strings in JavaScript 🛤

Notifications You must be signed in to change notification settings

Qeepsake/rails-guid

Repository files navigation

Rails Guid for JavaScript

All Contributors

Zero dependancy utility for creating and extracting rails GUIDs from a string.

NPM JavaScript Style Guide

Install

npm install --save @qeepsake/rails-guid

Usage

Extracting Rails GUID

You can use extractRailsId to extract a Rails GUID from a string:

import { extractRailsId } from '@qeepsake/rails-guid';

const guid = "gid://qeepsake-rails/Model/55587";
extractRailsId(guid) // -> 55587

Creating Rails GUID

You can use the createRailsId to create Rails GUID:

import { createRailsId } from '@qeepsake/rails-guid';

const id = 55587 || "55587";
createRailsId(id, "Model") // -> gid://qeepsake-rails/Model/55587

Tetsing for Extracted Rails ID

import { isExtractedRailsId } from '@qeepsake/rails-guid';

isExtractedRailsId("55587") // => true
isExtractedRailsId("gid://qeepsake-rails/Model/55587") // => false

Testing for Rails Global ID

You can use `isRailsId`` to test if a string is a valid Rails Global ID:

import { isRailsId } from '@qeepsake/rails-guid';

isRailsId("gid://qeepsake-rails/User/1")  // => true
isRailsId("gid://someotherapp/User/1")   // => true
isRailsId("User/1")                      // => false

This function tests if the string conforms to the general Rails gid structure: gid://<ANY_APP_NAME>/<MODEL_NAME>/<ID>.

License

MIT © lukebrandonfarrell

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Luke Brandon Farrell

📆 💻

This project follows the all-contributors specification. Contributions of any kind welcome!