Sha256: b4286d1de9222d6d9d3cfbf9c5515548ca22c977dcd74400f434e938e7fc8379

Contents?: true

Size: 799 Bytes

Versions: 466

Compression:

Stored size: 799 Bytes

Contents

import { filter } from 'lodash'

const isEmpty = (value: string | unknown): boolean => !value || value == ''

const titleizedWord = (word: string): string => (
  word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()
)

export const titleize = (sentence: string): string => (
  isEmpty(sentence) ? sentence : sentence.split(' ').map(titleizedWord).join(' ')
)

const notEmpty = (value: string | Record<string, unknown>): boolean => !isEmpty(value)

export const joinPresent = (array: string[], separator: string): string => (
  filter(array, notEmpty).join(separator)
)

export const camelToSnakeCase = (word: string): string => {
  return word.split(/([A-Z])/g).map((w, i) => {
    const prefix = i > 0 ? '_' : ''
    return w === w.toLowerCase() ? w : prefix + w.toLowerCase()
  }).join("")
}

Version data entries

466 entries across 466 versions & 1 rubygems

Version Path
playbook_ui-14.11.1.pre.alpha.PLAY17445539 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR798datepickerturbo5537 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.pbntr703collapsiblerowsrails5536 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PLAY1751pbcontenttagpt25529 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR7495495 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.11 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.10 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.9 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.8 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.7 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.play1724darkmodeauditmap5437 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR719listdraggablesimple5432 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR768stickyrightcolumn5431 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.6 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR718simiplifieddraggablereact5415 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.play1724darkmodeauditmap5413 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.12.0.pre.rc.5 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.play1724darkmodeauditmap5409 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR718simiplifieddraggablereact5400 app/pb_kits/playbook/utilities/text.ts
playbook_ui-14.11.1.pre.alpha.PBNTR718simiplifieddraggablereact5392 app/pb_kits/playbook/utilities/text.ts