"Fifty-eight percent of people put pets in family and holiday portraits.""More than 1 in 3 American families own a dog.""In Australia, a man who was arrested for drug possession argued his civil rights were violated when the drug-sniffing dog nuzzled his crotch. While the judge dismissed the charges, they were later reinstated when a prosecutor pointed out that in the animal kingdom, crotch nuzzling was a friendly gesture.""Is something wet? Unlike humans who sweat everywhere, dogs only sweat through the pads of their feet.""It’s been demonstrated that dogs can reduce both physical and emotional anxiety."
"Fifty-eight percent of people put pets in family and holiday portraits.""More than 1 in 3 American families own a dog.""In Australia, a man who was arrested for drug possession argued his civil rights were violated when the drug-sniffing dog nuzzled his crotch. While the judge dismissed the charges, they were later reinstated when a prosecutor pointed out that in the animal kingdom, crotch nuzzling was a friendly gesture.""Is something wet? Unlike humans who sweat everywhere, dogs only sweat through the pads of their feet.""It’s been demonstrated that dogs can reduce both physical and emotional anxiety."
Home>Projects>

dce

all-in-one function for creating dom elements

DCE

DCE

DCE gives the option to create a dom element, attach it to a parent and assign multiple attributes through a function instead of individually.

Installation

With npm

$ npm i -S dce

With the wrong package manager

$ yarn add dce

Usage

The function name is dce and if using commonjs can required

const { dce } = require('dce');

or imported if using es6 imports.

import { dce } from 'dce';

Parameter overloading when adding to parent

For example (using tailwindcss)

import { dce } from 'dce';

const container = dce('div', document.body, {
  className: 'text-2xl text-red mt-4',
  textContent: 'Hello world',
  onclick: () => alert('hello world!')
});

dce('a', container, {
  className: 'text-blue underline hover:no-underline',
  href: 'https://rothert.cc'
})

Parameter overloading when not adding to parent

For example

import { dce } from 'dce';

const input = dce('input', document.body, {
  className: 'border focus:text-red-500',
  value: 'Hello world',
  onchange: () => alert(`value is "${input.value}"`),
  onblur: () => input.remove()
});

Using dce in other docs

By default dce uses the parent elements doc meaning if you for example want to create an element inside an iframe you can simply set any of the iframes element as parent and its going to use the iframe as docs.

Example adding meta information inside an iframe

import { dce } from 'dce';

const iframe = dce('iframe', viewerWrapper, {
  className: 'flex flex-col bg-white text-black',
  title: 'Example iframe'
});

const document = iframe.contentWindow.document;

dce('meta', document.head, {
  name: 'viewport',
  content: 'width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no'
});

Footer