Socket
Socket
Sign inDemoInstall

@planningcenter/cc-url

Package Overview
Dependencies
0
Maintainers
25
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @planningcenter/cc-url

A dumb url origin generator in JS


Version published
Weekly downloads
612
decreased by-45.11%
Maintainers
25
Install size
27.6 kB
Created
Weekly downloads
 

Readme

Source

@planningcenter/cc-url

Church Center origin generator for JavaScript.

Builds runtime-environment-considered origins and urls in JavaScript for Church Center subdomains. For those familiar with @planningcenter/url, it may be worth noting that this generator has no concerns about what application is building the urls.

Examples

This package is primarily concerned with building origins and urls in the browser. It is smart about inferring the Church Center origin from the current window.location.origin. If window.location.origin is unavailable (like in the tests), an origin can be passed explicitly, but you'll most likely only need that for composing urls across subdomains.

// window.location == "https://carlsbad.churchcenter.com/giving"
import { buildSubdomain, buildUrl } from "@planningcenter/cc-url"

let api = buildSubdomain("api")
// => https://api.churchcenter.com

let myGroupsUrl = buildUrl("/groups/profile")
// => https://carlsbad.churchcenter.com/groups/profile

Composition

Want to build API urls or app-specific urls? Compose to your heart's content!

// window.location == "http://first.churchcenter.test/giving/profile"
import { buildSubdomain, buildUrl } from "@planningcenter/cc-url"

function bouldGroupsUrl(pathname) {
  return buildUrl(`/groups${pathname}`)
}

let myGroupsUrl = buildGroupsUrl("/profile")
// => http://first.churchcenter.test/groups/profile

function buildApiUrl(pathname) {
  return buildUrl(pathname, buildSubdomain("api"))
}

function buildPeopleApiUrl(pathname) {
  return buildApiUrl(`/people/v2${pathname}`)
}

function buildFormUrl(id) {
  return buildPeopleApiUrl(`/forms/${id}`)
}

let formUrl = buildFormUrl(42)
// => http://api.churchcenter.test/people/v2/forms/42

// function build.... you get the idea

Installation

Script tag on Rails

<script
  type="javascript"
  src="https://unpkg.com/@planningcenter/cc-url/dist/url.umd.js"
></script>
<!-- exposed as global `ChurchCenterUrl` -->

Webpacker on Rails

yarn add @planningcenter/cc-url
import { buildSubdomain, buildUrl } from "@planningcenter/cc-url"

FAQs

Last updated on 20 Feb 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc