arlac77 / pacc

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

npm License Typed with TypeScript bundlejs downloads GitHub Issues Build Status Styled with prettier Commitizen friendly Known Vulnerabilities Coverage Status

pacc

propetty path utils

import { getAttribute } from "pacc";

const result = getAttribute({ a: [0,{ b: 4 }]}, "a[1].b");
// result === 4

API

Table of Contents

AttributeDefinition

Type: Object

Properties

  • type string
  • isKey boolean
  • writable boolean
  • mandatory boolean
  • private boolean? should the value be shown
  • depends string? name of an attribute we depend on
  • additionalAttributes Array<string> extra attributes that are present in case our attribute is set
  • description string? human readable
  • default any? the default value
  • set Function? set the value
  • get Function? get the value can be used to calculate default values
  • env (Array<string> | string)? environment variable(s) used to provide the value

tokens

tokens

Split property path into tokens

Parameters

setAttribute

Set Object attribute. The name may be a property path like 'a.b.c'.

Parameters

getAttribute

Deliver attribute value. The name may be a property path like 'a.b.c' or a[2]

Parameters

Returns any value associated with the given property name

getAttributeAndOperator

Deliver attribute value and operator. The name may be a property path like 'a.b.c <='.

Parameters

Returns [any, Token] value associated with the given property name

Token

Type: Object

Properties

createToken

Parameters

Returns Token

PLUS

Type: Token

MINUS

Type: Token

STAR

Type: Token

DIVIDE

Type: Token

NOT

Type: Token

NOT_EQUAL

Type: Token

GREATER

Type: Token

GREATER_EQUAL

Type: Token

LESS

Type: Token

LESS_EQUAL

Type: Token

EQUAL

Type: Token

OPEN_ROUND

Type: Token

CLOSE_ROUND

Type: Token

OPEN_BRACKET

Type: Token

CLOSE_BRACKET

Type: Token

OPEN_CURLY

Type: Token

CLOSE_CURLY

Type: Token

QUESTION

Type: Token

COLON

Type: Token

SEMICOLON

Type: Token

COMMA

Type: Token

DOT

Type: Token

AMPERSAND

Type: Token

DOUBLE_AMPERSAND

Type: Token

BAR

Type: Token

DOUBLE_BAR

Type: Token

install

With npm do:

npm install pacc

license

BSD-2-Clause

About

License:BSD 2-Clause "Simplified" License


Languages

Language:JavaScript 100.0%