WIP - add extractor, generate snippet_data
This commit is contained in:
65
node_modules/property-information/find.js
generated
vendored
Normal file
65
node_modules/property-information/find.js
generated
vendored
Normal file
@ -0,0 +1,65 @@
|
||||
'use strict'
|
||||
|
||||
var normalize = require('./normalize')
|
||||
var DefinedInfo = require('./lib/util/defined-info')
|
||||
var Info = require('./lib/util/info')
|
||||
|
||||
var data = 'data'
|
||||
|
||||
module.exports = find
|
||||
|
||||
var valid = /^data[-a-z0-9.:_]+$/i
|
||||
var dash = /-[a-z]/g
|
||||
var cap = /[A-Z]/g
|
||||
|
||||
function find(schema, value) {
|
||||
var normal = normalize(value)
|
||||
var prop = value
|
||||
var Type = Info
|
||||
|
||||
if (normal in schema.normal) {
|
||||
return schema.property[schema.normal[normal]]
|
||||
}
|
||||
|
||||
if (normal.length > 4 && normal.slice(0, 4) === data && valid.test(value)) {
|
||||
// Attribute or property.
|
||||
if (value.charAt(4) === '-') {
|
||||
prop = datasetToProperty(value)
|
||||
} else {
|
||||
value = datasetToAttribute(value)
|
||||
}
|
||||
|
||||
Type = DefinedInfo
|
||||
}
|
||||
|
||||
return new Type(prop, value)
|
||||
}
|
||||
|
||||
function datasetToProperty(attribute) {
|
||||
var value = attribute.slice(5).replace(dash, camelcase)
|
||||
return data + value.charAt(0).toUpperCase() + value.slice(1)
|
||||
}
|
||||
|
||||
function datasetToAttribute(property) {
|
||||
var value = property.slice(4)
|
||||
|
||||
if (dash.test(value)) {
|
||||
return property
|
||||
}
|
||||
|
||||
value = value.replace(cap, kebab)
|
||||
|
||||
if (value.charAt(0) !== '-') {
|
||||
value = '-' + value
|
||||
}
|
||||
|
||||
return data + value
|
||||
}
|
||||
|
||||
function kebab($0) {
|
||||
return '-' + $0.toLowerCase()
|
||||
}
|
||||
|
||||
function camelcase($0) {
|
||||
return $0.charAt(1).toUpperCase()
|
||||
}
|
||||
10
node_modules/property-information/html.js
generated
vendored
Normal file
10
node_modules/property-information/html.js
generated
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
'use strict'
|
||||
|
||||
var merge = require('./lib/util/merge')
|
||||
var xlink = require('./lib/xlink')
|
||||
var xml = require('./lib/xml')
|
||||
var xmlns = require('./lib/xmlns')
|
||||
var aria = require('./lib/aria')
|
||||
var html = require('./lib/html')
|
||||
|
||||
module.exports = merge([xml, xlink, xmlns, aria, html])
|
||||
6
node_modules/property-information/index.js
generated
vendored
Normal file
6
node_modules/property-information/index.js
generated
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
'use strict'
|
||||
|
||||
exports.html = require('./html')
|
||||
exports.svg = require('./svg')
|
||||
exports.normalize = require('./normalize')
|
||||
exports.find = require('./find')
|
||||
67
node_modules/property-information/lib/aria.js
generated
vendored
Normal file
67
node_modules/property-information/lib/aria.js
generated
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
'use strict'
|
||||
|
||||
var types = require('./util/types')
|
||||
var create = require('./util/create')
|
||||
|
||||
var booleanish = types.booleanish
|
||||
var number = types.number
|
||||
var spaceSeparated = types.spaceSeparated
|
||||
|
||||
module.exports = create({
|
||||
transform: ariaTransform,
|
||||
properties: {
|
||||
ariaActiveDescendant: null,
|
||||
ariaAtomic: booleanish,
|
||||
ariaAutoComplete: null,
|
||||
ariaBusy: booleanish,
|
||||
ariaChecked: booleanish,
|
||||
ariaColCount: number,
|
||||
ariaColIndex: number,
|
||||
ariaColSpan: number,
|
||||
ariaControls: spaceSeparated,
|
||||
ariaCurrent: null,
|
||||
ariaDescribedBy: spaceSeparated,
|
||||
ariaDetails: null,
|
||||
ariaDisabled: booleanish,
|
||||
ariaDropEffect: spaceSeparated,
|
||||
ariaErrorMessage: null,
|
||||
ariaExpanded: booleanish,
|
||||
ariaFlowTo: spaceSeparated,
|
||||
ariaGrabbed: booleanish,
|
||||
ariaHasPopup: null,
|
||||
ariaHidden: booleanish,
|
||||
ariaInvalid: null,
|
||||
ariaKeyShortcuts: null,
|
||||
ariaLabel: null,
|
||||
ariaLabelledBy: spaceSeparated,
|
||||
ariaLevel: number,
|
||||
ariaLive: null,
|
||||
ariaModal: booleanish,
|
||||
ariaMultiLine: booleanish,
|
||||
ariaMultiSelectable: booleanish,
|
||||
ariaOrientation: null,
|
||||
ariaOwns: spaceSeparated,
|
||||
ariaPlaceholder: null,
|
||||
ariaPosInSet: number,
|
||||
ariaPressed: booleanish,
|
||||
ariaReadOnly: booleanish,
|
||||
ariaRelevant: null,
|
||||
ariaRequired: booleanish,
|
||||
ariaRoleDescription: spaceSeparated,
|
||||
ariaRowCount: number,
|
||||
ariaRowIndex: number,
|
||||
ariaRowSpan: number,
|
||||
ariaSelected: booleanish,
|
||||
ariaSetSize: number,
|
||||
ariaSort: null,
|
||||
ariaValueMax: number,
|
||||
ariaValueMin: number,
|
||||
ariaValueNow: number,
|
||||
ariaValueText: null,
|
||||
role: null
|
||||
}
|
||||
})
|
||||
|
||||
function ariaTransform(_, prop) {
|
||||
return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase()
|
||||
}
|
||||
219
node_modules/property-information/lib/html.js
generated
vendored
Normal file
219
node_modules/property-information/lib/html.js
generated
vendored
Normal file
@ -0,0 +1,219 @@
|
||||
'use strict'
|
||||
|
||||
var types = require('./util/types')
|
||||
var create = require('./util/create')
|
||||
var caseInsensitiveTransform = require('./util/case-insensitive-transform')
|
||||
|
||||
var boolean = types.boolean
|
||||
var overloadedBoolean = types.overloadedBoolean
|
||||
var booleanish = types.booleanish
|
||||
var number = types.number
|
||||
var spaceSeparated = types.spaceSeparated
|
||||
var commaSeparated = types.commaSeparated
|
||||
|
||||
module.exports = create({
|
||||
space: 'html',
|
||||
attributes: {
|
||||
acceptcharset: 'accept-charset',
|
||||
classname: 'class',
|
||||
htmlfor: 'for',
|
||||
httpequiv: 'http-equiv'
|
||||
},
|
||||
transform: caseInsensitiveTransform,
|
||||
mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],
|
||||
properties: {
|
||||
// Standard Properties.
|
||||
abbr: null,
|
||||
accept: commaSeparated,
|
||||
acceptCharset: spaceSeparated,
|
||||
accessKey: spaceSeparated,
|
||||
action: null,
|
||||
allowFullScreen: boolean,
|
||||
allowPaymentRequest: boolean,
|
||||
allowUserMedia: boolean,
|
||||
alt: null,
|
||||
as: null,
|
||||
async: boolean,
|
||||
autoCapitalize: null,
|
||||
autoComplete: spaceSeparated,
|
||||
autoFocus: boolean,
|
||||
autoPlay: boolean,
|
||||
capture: boolean,
|
||||
charSet: null,
|
||||
checked: boolean,
|
||||
cite: null,
|
||||
className: spaceSeparated,
|
||||
cols: number,
|
||||
colSpan: null,
|
||||
content: null,
|
||||
contentEditable: booleanish,
|
||||
controls: boolean,
|
||||
controlsList: spaceSeparated,
|
||||
coords: number | commaSeparated,
|
||||
crossOrigin: null,
|
||||
data: null,
|
||||
dateTime: null,
|
||||
decoding: null,
|
||||
default: boolean,
|
||||
defer: boolean,
|
||||
dir: null,
|
||||
dirName: null,
|
||||
disabled: boolean,
|
||||
download: overloadedBoolean,
|
||||
draggable: booleanish,
|
||||
encType: null,
|
||||
form: null,
|
||||
formAction: null,
|
||||
formEncType: null,
|
||||
formMethod: null,
|
||||
formNoValidate: boolean,
|
||||
formTarget: null,
|
||||
headers: spaceSeparated,
|
||||
height: number,
|
||||
hidden: boolean,
|
||||
high: number,
|
||||
href: null,
|
||||
hrefLang: null,
|
||||
htmlFor: spaceSeparated,
|
||||
httpEquiv: spaceSeparated,
|
||||
id: null,
|
||||
inputMode: null,
|
||||
integrity: null,
|
||||
is: null,
|
||||
isMap: boolean,
|
||||
itemId: null,
|
||||
itemProp: spaceSeparated,
|
||||
itemRef: spaceSeparated,
|
||||
itemScope: boolean,
|
||||
itemType: spaceSeparated,
|
||||
kind: null,
|
||||
label: null,
|
||||
lang: null,
|
||||
language: null,
|
||||
list: null,
|
||||
loop: boolean,
|
||||
low: number,
|
||||
manifest: null,
|
||||
max: null,
|
||||
maxLength: number,
|
||||
media: null,
|
||||
method: null,
|
||||
min: null,
|
||||
minLength: number,
|
||||
multiple: boolean,
|
||||
muted: boolean,
|
||||
name: null,
|
||||
nonce: null,
|
||||
noModule: boolean,
|
||||
noValidate: boolean,
|
||||
open: boolean,
|
||||
optimum: number,
|
||||
pattern: null,
|
||||
ping: spaceSeparated,
|
||||
placeholder: null,
|
||||
playsInline: boolean,
|
||||
poster: null,
|
||||
preload: null,
|
||||
readOnly: boolean,
|
||||
referrerPolicy: null,
|
||||
rel: spaceSeparated,
|
||||
required: boolean,
|
||||
reversed: boolean,
|
||||
rows: number,
|
||||
rowSpan: number,
|
||||
sandbox: spaceSeparated,
|
||||
scope: null,
|
||||
scoped: boolean,
|
||||
seamless: boolean,
|
||||
selected: boolean,
|
||||
shape: null,
|
||||
size: number,
|
||||
sizes: spaceSeparated,
|
||||
slot: null,
|
||||
span: number,
|
||||
spellCheck: booleanish,
|
||||
src: null,
|
||||
srcDoc: null,
|
||||
srcLang: null,
|
||||
srcSet: commaSeparated,
|
||||
start: number,
|
||||
step: null,
|
||||
style: null,
|
||||
tabIndex: number,
|
||||
target: null,
|
||||
title: null,
|
||||
translate: null,
|
||||
type: null,
|
||||
typeMustMatch: boolean,
|
||||
useMap: null,
|
||||
value: booleanish,
|
||||
width: number,
|
||||
wrap: null,
|
||||
|
||||
// Legacy.
|
||||
// See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis
|
||||
align: null, // Several. Use CSS `text-align` instead,
|
||||
aLink: null, // `<body>`. Use CSS `a:active {color}` instead
|
||||
archive: spaceSeparated, // `<object>`. List of URIs to archives
|
||||
axis: null, // `<td>` and `<th>`. Use `scope` on `<th>`
|
||||
background: null, // `<body>`. Use CSS `background-image` instead
|
||||
bgColor: null, // `<body>` and table elements. Use CSS `background-color` instead
|
||||
border: number, // `<table>`. Use CSS `border-width` instead,
|
||||
borderColor: null, // `<table>`. Use CSS `border-color` instead,
|
||||
bottomMargin: number, // `<body>`
|
||||
cellPadding: null, // `<table>`
|
||||
cellSpacing: null, // `<table>`
|
||||
char: null, // Several table elements. When `align=char`, sets the character to align on
|
||||
charOff: null, // Several table elements. When `char`, offsets the alignment
|
||||
classId: null, // `<object>`
|
||||
clear: null, // `<br>`. Use CSS `clear` instead
|
||||
code: null, // `<object>`
|
||||
codeBase: null, // `<object>`
|
||||
codeType: null, // `<object>`
|
||||
color: null, // `<font>` and `<hr>`. Use CSS instead
|
||||
compact: boolean, // Lists. Use CSS to reduce space between items instead
|
||||
declare: boolean, // `<object>`
|
||||
event: null, // `<script>`
|
||||
face: null, // `<font>`. Use CSS instead
|
||||
frame: null, // `<table>`
|
||||
frameBorder: null, // `<iframe>`. Use CSS `border` instead
|
||||
hSpace: number, // `<img>` and `<object>`
|
||||
leftMargin: number, // `<body>`
|
||||
link: null, // `<body>`. Use CSS `a:link {color: *}` instead
|
||||
longDesc: null, // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`
|
||||
lowSrc: null, // `<img>`. Use a `<picture>`
|
||||
marginHeight: number, // `<body>`
|
||||
marginWidth: number, // `<body>`
|
||||
noResize: boolean, // `<frame>`
|
||||
noHref: boolean, // `<area>`. Use no href instead of an explicit `nohref`
|
||||
noShade: boolean, // `<hr>`. Use background-color and height instead of borders
|
||||
noWrap: boolean, // `<td>` and `<th>`
|
||||
object: null, // `<applet>`
|
||||
profile: null, // `<head>`
|
||||
prompt: null, // `<isindex>`
|
||||
rev: null, // `<link>`
|
||||
rightMargin: number, // `<body>`
|
||||
rules: null, // `<table>`
|
||||
scheme: null, // `<meta>`
|
||||
scrolling: booleanish, // `<frame>`. Use overflow in the child context
|
||||
standby: null, // `<object>`
|
||||
summary: null, // `<table>`
|
||||
text: null, // `<body>`. Use CSS `color` instead
|
||||
topMargin: number, // `<body>`
|
||||
valueType: null, // `<param>`
|
||||
version: null, // `<html>`. Use a doctype.
|
||||
vAlign: null, // Several. Use CSS `vertical-align` instead
|
||||
vLink: null, // `<body>`. Use CSS `a:visited {color}` instead
|
||||
vSpace: number, // `<img>` and `<object>`
|
||||
|
||||
// Non-standard Properties.
|
||||
allowTransparency: null,
|
||||
autoCorrect: null,
|
||||
autoSave: null,
|
||||
prefix: null,
|
||||
property: null,
|
||||
results: number,
|
||||
security: null,
|
||||
unselectable: null
|
||||
}
|
||||
})
|
||||
406
node_modules/property-information/lib/svg.js
generated
vendored
Normal file
406
node_modules/property-information/lib/svg.js
generated
vendored
Normal file
@ -0,0 +1,406 @@
|
||||
'use strict'
|
||||
|
||||
var types = require('./util/types')
|
||||
var create = require('./util/create')
|
||||
var caseSensitiveTransform = require('./util/case-sensitive-transform')
|
||||
|
||||
var boolean = types.boolean
|
||||
var number = types.number
|
||||
var spaceSeparated = types.spaceSeparated
|
||||
var commaSeparated = types.commaSeparated
|
||||
var commaOrSpaceSeparated = types.commaOrSpaceSeparated
|
||||
|
||||
module.exports = create({
|
||||
space: 'svg',
|
||||
attributes: {
|
||||
accentHeight: 'accent-height',
|
||||
alignmentBaseline: 'alignment-baseline',
|
||||
arabicForm: 'arabic-form',
|
||||
baselineShift: 'baseline-shift',
|
||||
capHeight: 'cap-height',
|
||||
className: 'class',
|
||||
clipPath: 'clip-path',
|
||||
clipRule: 'clip-rule',
|
||||
colorInterpolation: 'color-interpolation',
|
||||
colorInterpolationFilters: 'color-interpolation-filters',
|
||||
colorProfile: 'color-profile',
|
||||
colorRendering: 'color-rendering',
|
||||
crossOrigin: 'crossorigin',
|
||||
dataType: 'datatype',
|
||||
dominantBaseline: 'dominant-baseline',
|
||||
enableBackground: 'enable-background',
|
||||
fillOpacity: 'fill-opacity',
|
||||
fillRule: 'fill-rule',
|
||||
floodColor: 'flood-color',
|
||||
floodOpacity: 'flood-opacity',
|
||||
fontFamily: 'font-family',
|
||||
fontSize: 'font-size',
|
||||
fontSizeAdjust: 'font-size-adjust',
|
||||
fontStretch: 'font-stretch',
|
||||
fontStyle: 'font-style',
|
||||
fontVariant: 'font-variant',
|
||||
fontWeight: 'font-weight',
|
||||
glyphName: 'glyph-name',
|
||||
glyphOrientationHorizontal: 'glyph-orientation-horizontal',
|
||||
glyphOrientationVertical: 'glyph-orientation-vertical',
|
||||
hrefLang: 'hreflang',
|
||||
horizAdvX: 'horiz-adv-x',
|
||||
horizOriginX: 'horiz-origin-x',
|
||||
horizOriginY: 'horiz-origin-y',
|
||||
imageRendering: 'image-rendering',
|
||||
letterSpacing: 'letter-spacing',
|
||||
lightingColor: 'lighting-color',
|
||||
markerEnd: 'marker-end',
|
||||
markerMid: 'marker-mid',
|
||||
markerStart: 'marker-start',
|
||||
navDown: 'nav-down',
|
||||
navDownLeft: 'nav-down-left',
|
||||
navDownRight: 'nav-down-right',
|
||||
navLeft: 'nav-left',
|
||||
navNext: 'nav-next',
|
||||
navPrev: 'nav-prev',
|
||||
navRight: 'nav-right',
|
||||
navUp: 'nav-up',
|
||||
navUpLeft: 'nav-up-left',
|
||||
navUpRight: 'nav-up-right',
|
||||
overlinePosition: 'overline-position',
|
||||
overlineThickness: 'overline-thickness',
|
||||
paintOrder: 'paint-order',
|
||||
panose1: 'panose-1',
|
||||
pointerEvents: 'pointer-events',
|
||||
renderingIntent: 'rendering-intent',
|
||||
shapeRendering: 'shape-rendering',
|
||||
stopColor: 'stop-color',
|
||||
stopOpacity: 'stop-opacity',
|
||||
strikethroughPosition: 'strikethrough-position',
|
||||
strikethroughThickness: 'strikethrough-thickness',
|
||||
strokeDashArray: 'stroke-dasharray',
|
||||
strokeDashOffset: 'stroke-dashoffset',
|
||||
strokeLineCap: 'stroke-linecap',
|
||||
strokeLineJoin: 'stroke-linejoin',
|
||||
strokeMiterLimit: 'stroke-miterlimit',
|
||||
strokeOpacity: 'stroke-opacity',
|
||||
strokeWidth: 'stroke-width',
|
||||
tabIndex: 'tabindex',
|
||||
textAnchor: 'text-anchor',
|
||||
textDecoration: 'text-decoration',
|
||||
textRendering: 'text-rendering',
|
||||
typeOf: 'typeof',
|
||||
underlinePosition: 'underline-position',
|
||||
underlineThickness: 'underline-thickness',
|
||||
unicodeBidi: 'unicode-bidi',
|
||||
unicodeRange: 'unicode-range',
|
||||
unitsPerEm: 'units-per-em',
|
||||
vAlphabetic: 'v-alphabetic',
|
||||
vHanging: 'v-hanging',
|
||||
vIdeographic: 'v-ideographic',
|
||||
vMathematical: 'v-mathematical',
|
||||
vectorEffect: 'vector-effect',
|
||||
vertAdvY: 'vert-adv-y',
|
||||
vertOriginX: 'vert-origin-x',
|
||||
vertOriginY: 'vert-origin-y',
|
||||
wordSpacing: 'word-spacing',
|
||||
writingMode: 'writing-mode',
|
||||
xHeight: 'x-height',
|
||||
// These were camelcased in Tiny. Now lowercased in SVG 2
|
||||
playbackOrder: 'playbackorder',
|
||||
timelineBegin: 'timelinebegin'
|
||||
},
|
||||
transform: caseSensitiveTransform,
|
||||
properties: {
|
||||
about: commaOrSpaceSeparated,
|
||||
accentHeight: number,
|
||||
accumulate: null,
|
||||
additive: null,
|
||||
alignmentBaseline: null,
|
||||
alphabetic: number,
|
||||
amplitude: number,
|
||||
arabicForm: null,
|
||||
ascent: number,
|
||||
attributeName: null,
|
||||
attributeType: null,
|
||||
azimuth: number,
|
||||
bandwidth: null,
|
||||
baselineShift: null,
|
||||
baseFrequency: null,
|
||||
baseProfile: null,
|
||||
bbox: null,
|
||||
begin: null,
|
||||
bias: number,
|
||||
by: null,
|
||||
calcMode: null,
|
||||
capHeight: number,
|
||||
className: spaceSeparated,
|
||||
clip: null,
|
||||
clipPath: null,
|
||||
clipPathUnits: null,
|
||||
clipRule: null,
|
||||
color: null,
|
||||
colorInterpolation: null,
|
||||
colorInterpolationFilters: null,
|
||||
colorProfile: null,
|
||||
colorRendering: null,
|
||||
content: null,
|
||||
contentScriptType: null,
|
||||
contentStyleType: null,
|
||||
crossOrigin: null,
|
||||
cursor: null,
|
||||
cx: null,
|
||||
cy: null,
|
||||
d: null,
|
||||
dataType: null,
|
||||
defaultAction: null,
|
||||
descent: number,
|
||||
diffuseConstant: number,
|
||||
direction: null,
|
||||
display: null,
|
||||
dur: null,
|
||||
divisor: number,
|
||||
dominantBaseline: null,
|
||||
download: boolean,
|
||||
dx: null,
|
||||
dy: null,
|
||||
edgeMode: null,
|
||||
editable: null,
|
||||
elevation: number,
|
||||
enableBackground: null,
|
||||
end: null,
|
||||
event: null,
|
||||
exponent: number,
|
||||
externalResourcesRequired: null,
|
||||
fill: null,
|
||||
fillOpacity: number,
|
||||
fillRule: null,
|
||||
filter: null,
|
||||
filterRes: null,
|
||||
filterUnits: null,
|
||||
floodColor: null,
|
||||
floodOpacity: null,
|
||||
focusable: null,
|
||||
focusHighlight: null,
|
||||
fontFamily: null,
|
||||
fontSize: null,
|
||||
fontSizeAdjust: null,
|
||||
fontStretch: null,
|
||||
fontStyle: null,
|
||||
fontVariant: null,
|
||||
fontWeight: null,
|
||||
format: null,
|
||||
fr: null,
|
||||
from: null,
|
||||
fx: null,
|
||||
fy: null,
|
||||
g1: commaSeparated,
|
||||
g2: commaSeparated,
|
||||
glyphName: commaSeparated,
|
||||
glyphOrientationHorizontal: null,
|
||||
glyphOrientationVertical: null,
|
||||
glyphRef: null,
|
||||
gradientTransform: null,
|
||||
gradientUnits: null,
|
||||
handler: null,
|
||||
hanging: number,
|
||||
hatchContentUnits: null,
|
||||
hatchUnits: null,
|
||||
height: null,
|
||||
href: null,
|
||||
hrefLang: null,
|
||||
horizAdvX: number,
|
||||
horizOriginX: number,
|
||||
horizOriginY: number,
|
||||
id: null,
|
||||
ideographic: number,
|
||||
imageRendering: null,
|
||||
initialVisibility: null,
|
||||
in: null,
|
||||
in2: null,
|
||||
intercept: number,
|
||||
k: number,
|
||||
k1: number,
|
||||
k2: number,
|
||||
k3: number,
|
||||
k4: number,
|
||||
kernelMatrix: commaOrSpaceSeparated,
|
||||
kernelUnitLength: null,
|
||||
keyPoints: null, // SEMI_COLON_SEPARATED
|
||||
keySplines: null, // SEMI_COLON_SEPARATED
|
||||
keyTimes: null, // SEMI_COLON_SEPARATED
|
||||
kerning: null,
|
||||
lang: null,
|
||||
lengthAdjust: null,
|
||||
letterSpacing: null,
|
||||
lightingColor: null,
|
||||
limitingConeAngle: number,
|
||||
local: null,
|
||||
markerEnd: null,
|
||||
markerMid: null,
|
||||
markerStart: null,
|
||||
markerHeight: null,
|
||||
markerUnits: null,
|
||||
markerWidth: null,
|
||||
mask: null,
|
||||
maskContentUnits: null,
|
||||
maskUnits: null,
|
||||
mathematical: null,
|
||||
max: null,
|
||||
media: null,
|
||||
mediaCharacterEncoding: null,
|
||||
mediaContentEncodings: null,
|
||||
mediaSize: number,
|
||||
mediaTime: null,
|
||||
method: null,
|
||||
min: null,
|
||||
mode: null,
|
||||
name: null,
|
||||
navDown: null,
|
||||
navDownLeft: null,
|
||||
navDownRight: null,
|
||||
navLeft: null,
|
||||
navNext: null,
|
||||
navPrev: null,
|
||||
navRight: null,
|
||||
navUp: null,
|
||||
navUpLeft: null,
|
||||
navUpRight: null,
|
||||
numOctaves: null,
|
||||
observer: null,
|
||||
offset: null,
|
||||
opacity: null,
|
||||
operator: null,
|
||||
order: null,
|
||||
orient: null,
|
||||
orientation: null,
|
||||
origin: null,
|
||||
overflow: null,
|
||||
overlay: null,
|
||||
overlinePosition: number,
|
||||
overlineThickness: number,
|
||||
paintOrder: null,
|
||||
panose1: null,
|
||||
path: null,
|
||||
pathLength: number,
|
||||
patternContentUnits: null,
|
||||
patternTransform: null,
|
||||
patternUnits: null,
|
||||
phase: null,
|
||||
pitch: null,
|
||||
playbackOrder: null,
|
||||
pointerEvents: null,
|
||||
points: null,
|
||||
pointsAtX: number,
|
||||
pointsAtY: number,
|
||||
pointsAtZ: number,
|
||||
preserveAlpha: null,
|
||||
preserveAspectRatio: null,
|
||||
primitiveUnits: null,
|
||||
propagate: null,
|
||||
property: commaOrSpaceSeparated,
|
||||
r: null,
|
||||
radius: null,
|
||||
refX: null,
|
||||
refY: null,
|
||||
rel: commaOrSpaceSeparated,
|
||||
rev: commaOrSpaceSeparated,
|
||||
renderingIntent: null,
|
||||
repeatCount: null,
|
||||
repeatDur: null,
|
||||
requiredExtensions: commaOrSpaceSeparated,
|
||||
requiredFeatures: commaOrSpaceSeparated,
|
||||
requiredFonts: commaOrSpaceSeparated,
|
||||
requiredFormats: commaOrSpaceSeparated,
|
||||
resource: null,
|
||||
restart: null,
|
||||
result: null,
|
||||
rotate: null,
|
||||
rx: null,
|
||||
ry: null,
|
||||
scale: null,
|
||||
seed: null,
|
||||
shapeRendering: null,
|
||||
side: null,
|
||||
slope: null,
|
||||
snapshotTime: null,
|
||||
specularConstant: number,
|
||||
specularExponent: number,
|
||||
spreadMethod: null,
|
||||
spacing: null,
|
||||
startOffset: null,
|
||||
stdDeviation: null,
|
||||
stemh: null,
|
||||
stemv: null,
|
||||
stitchTiles: null,
|
||||
stopColor: null,
|
||||
stopOpacity: null,
|
||||
strikethroughPosition: number,
|
||||
strikethroughThickness: number,
|
||||
string: null,
|
||||
stroke: null,
|
||||
strokeDashArray: commaOrSpaceSeparated,
|
||||
strokeDashOffset: null,
|
||||
strokeLineCap: null,
|
||||
strokeLineJoin: null,
|
||||
strokeMiterLimit: number,
|
||||
strokeOpacity: number,
|
||||
strokeWidth: null,
|
||||
style: null,
|
||||
surfaceScale: number,
|
||||
syncBehavior: null,
|
||||
syncBehaviorDefault: null,
|
||||
syncMaster: null,
|
||||
syncTolerance: null,
|
||||
syncToleranceDefault: null,
|
||||
systemLanguage: commaOrSpaceSeparated,
|
||||
tabIndex: number,
|
||||
tableValues: null,
|
||||
target: null,
|
||||
targetX: number,
|
||||
targetY: number,
|
||||
textAnchor: null,
|
||||
textDecoration: null,
|
||||
textRendering: null,
|
||||
textLength: null,
|
||||
timelineBegin: null,
|
||||
title: null,
|
||||
transformBehavior: null,
|
||||
type: null,
|
||||
typeOf: commaOrSpaceSeparated,
|
||||
to: null,
|
||||
transform: null,
|
||||
u1: null,
|
||||
u2: null,
|
||||
underlinePosition: number,
|
||||
underlineThickness: number,
|
||||
unicode: null,
|
||||
unicodeBidi: null,
|
||||
unicodeRange: null,
|
||||
unitsPerEm: number,
|
||||
values: null,
|
||||
vAlphabetic: number,
|
||||
vMathematical: number,
|
||||
vectorEffect: null,
|
||||
vHanging: number,
|
||||
vIdeographic: number,
|
||||
version: null,
|
||||
vertAdvY: number,
|
||||
vertOriginX: number,
|
||||
vertOriginY: number,
|
||||
viewBox: null,
|
||||
viewTarget: null,
|
||||
visibility: null,
|
||||
width: null,
|
||||
widths: null,
|
||||
wordSpacing: null,
|
||||
writingMode: null,
|
||||
x: null,
|
||||
x1: null,
|
||||
x2: null,
|
||||
xChannelSelector: null,
|
||||
xHeight: number,
|
||||
y: null,
|
||||
y1: null,
|
||||
y2: null,
|
||||
yChannelSelector: null,
|
||||
z: null,
|
||||
zoomAndPan: null
|
||||
}
|
||||
})
|
||||
9
node_modules/property-information/lib/util/case-insensitive-transform.js
generated
vendored
Normal file
9
node_modules/property-information/lib/util/case-insensitive-transform.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
'use strict'
|
||||
|
||||
var caseSensitiveTransform = require('./case-sensitive-transform')
|
||||
|
||||
module.exports = caseInsensitiveTransform
|
||||
|
||||
function caseInsensitiveTransform(attributes, property) {
|
||||
return caseSensitiveTransform(attributes, property.toLowerCase())
|
||||
}
|
||||
7
node_modules/property-information/lib/util/case-sensitive-transform.js
generated
vendored
Normal file
7
node_modules/property-information/lib/util/case-sensitive-transform.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = caseSensitiveTransform
|
||||
|
||||
function caseSensitiveTransform(attributes, attribute) {
|
||||
return attribute in attributes ? attributes[attribute] : attribute
|
||||
}
|
||||
39
node_modules/property-information/lib/util/create.js
generated
vendored
Normal file
39
node_modules/property-information/lib/util/create.js
generated
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
'use strict'
|
||||
|
||||
var normalize = require('../../normalize')
|
||||
var Schema = require('./schema')
|
||||
var DefinedInfo = require('./defined-info')
|
||||
|
||||
module.exports = create
|
||||
|
||||
function create(definition) {
|
||||
var space = definition.space
|
||||
var mustUseProperty = definition.mustUseProperty || []
|
||||
var attributes = definition.attributes || {}
|
||||
var props = definition.properties
|
||||
var transform = definition.transform
|
||||
var property = {}
|
||||
var normal = {}
|
||||
var prop
|
||||
var info
|
||||
|
||||
for (prop in props) {
|
||||
info = new DefinedInfo(
|
||||
prop,
|
||||
transform(attributes, prop),
|
||||
props[prop],
|
||||
space
|
||||
)
|
||||
|
||||
if (mustUseProperty.indexOf(prop) !== -1) {
|
||||
info.mustUseProperty = true
|
||||
}
|
||||
|
||||
property[prop] = info
|
||||
|
||||
normal[normalize(prop)] = prop
|
||||
normal[normalize(info.attribute)] = prop
|
||||
}
|
||||
|
||||
return new Schema(property, normal, space)
|
||||
}
|
||||
31
node_modules/property-information/lib/util/defined-info.js
generated
vendored
Normal file
31
node_modules/property-information/lib/util/defined-info.js
generated
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
'use strict'
|
||||
|
||||
var Info = require('./info')
|
||||
var types = require('./types')
|
||||
|
||||
module.exports = DefinedInfo
|
||||
|
||||
DefinedInfo.prototype = new Info()
|
||||
DefinedInfo.prototype.defined = true
|
||||
|
||||
function DefinedInfo(property, attribute, mask, space) {
|
||||
mark(this, 'space', space)
|
||||
Info.call(this, property, attribute)
|
||||
mark(this, 'boolean', check(mask, types.boolean))
|
||||
mark(this, 'booleanish', check(mask, types.booleanish))
|
||||
mark(this, 'overloadedBoolean', check(mask, types.overloadedBoolean))
|
||||
mark(this, 'number', check(mask, types.number))
|
||||
mark(this, 'commaSeparated', check(mask, types.commaSeparated))
|
||||
mark(this, 'spaceSeparated', check(mask, types.spaceSeparated))
|
||||
mark(this, 'commaOrSpaceSeparated', check(mask, types.commaOrSpaceSeparated))
|
||||
}
|
||||
|
||||
function mark(values, key, value) {
|
||||
if (value) {
|
||||
values[key] = value
|
||||
}
|
||||
}
|
||||
|
||||
function check(value, mask) {
|
||||
return (value & mask) === mask
|
||||
}
|
||||
23
node_modules/property-information/lib/util/info.js
generated
vendored
Normal file
23
node_modules/property-information/lib/util/info.js
generated
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = Info
|
||||
|
||||
var proto = Info.prototype
|
||||
|
||||
proto.space = null
|
||||
proto.attribute = null
|
||||
proto.property = null
|
||||
proto.boolean = false
|
||||
proto.booleanish = false
|
||||
proto.overloadedBoolean = false
|
||||
proto.number = false
|
||||
proto.commaSeparated = false
|
||||
proto.spaceSeparated = false
|
||||
proto.commaOrSpaceSeparated = false
|
||||
proto.mustUseProperty = false
|
||||
proto.defined = false
|
||||
|
||||
function Info(property, attribute) {
|
||||
this.property = property
|
||||
this.attribute = attribute
|
||||
}
|
||||
28
node_modules/property-information/lib/util/merge.js
generated
vendored
Normal file
28
node_modules/property-information/lib/util/merge.js
generated
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
'use strict'
|
||||
|
||||
var xtend = require('xtend')
|
||||
var Schema = require('./schema')
|
||||
|
||||
module.exports = merge
|
||||
|
||||
function merge(definitions) {
|
||||
var length = definitions.length
|
||||
var property = []
|
||||
var normal = []
|
||||
var index = -1
|
||||
var info
|
||||
var space
|
||||
|
||||
while (++index < length) {
|
||||
info = definitions[index]
|
||||
property.push(info.property)
|
||||
normal.push(info.normal)
|
||||
space = info.space
|
||||
}
|
||||
|
||||
return new Schema(
|
||||
xtend.apply(null, property),
|
||||
xtend.apply(null, normal),
|
||||
space
|
||||
)
|
||||
}
|
||||
18
node_modules/property-information/lib/util/schema.js
generated
vendored
Normal file
18
node_modules/property-information/lib/util/schema.js
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = Schema
|
||||
|
||||
var proto = Schema.prototype
|
||||
|
||||
proto.space = null
|
||||
proto.normal = {}
|
||||
proto.property = {}
|
||||
|
||||
function Schema(property, normal, space) {
|
||||
this.property = property
|
||||
this.normal = normal
|
||||
|
||||
if (space) {
|
||||
this.space = space
|
||||
}
|
||||
}
|
||||
15
node_modules/property-information/lib/util/types.js
generated
vendored
Normal file
15
node_modules/property-information/lib/util/types.js
generated
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
'use strict'
|
||||
|
||||
var powers = 0
|
||||
|
||||
exports.boolean = increment()
|
||||
exports.booleanish = increment()
|
||||
exports.overloadedBoolean = increment()
|
||||
exports.number = increment()
|
||||
exports.spaceSeparated = increment()
|
||||
exports.commaSeparated = increment()
|
||||
exports.commaOrSpaceSeparated = increment()
|
||||
|
||||
function increment() {
|
||||
return Math.pow(2, ++powers)
|
||||
}
|
||||
21
node_modules/property-information/lib/xlink.js
generated
vendored
Normal file
21
node_modules/property-information/lib/xlink.js
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
'use strict'
|
||||
|
||||
var create = require('./util/create')
|
||||
|
||||
module.exports = create({
|
||||
space: 'xlink',
|
||||
transform: xlinkTransform,
|
||||
properties: {
|
||||
xLinkActuate: null,
|
||||
xLinkArcRole: null,
|
||||
xLinkHref: null,
|
||||
xLinkRole: null,
|
||||
xLinkShow: null,
|
||||
xLinkTitle: null,
|
||||
xLinkType: null
|
||||
}
|
||||
})
|
||||
|
||||
function xlinkTransform(_, prop) {
|
||||
return 'xlink:' + prop.slice(5).toLowerCase()
|
||||
}
|
||||
17
node_modules/property-information/lib/xml.js
generated
vendored
Normal file
17
node_modules/property-information/lib/xml.js
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
'use strict'
|
||||
|
||||
var create = require('./util/create')
|
||||
|
||||
module.exports = create({
|
||||
space: 'xml',
|
||||
transform: xmlTransform,
|
||||
properties: {
|
||||
xmlLang: null,
|
||||
xmlBase: null,
|
||||
xmlSpace: null
|
||||
}
|
||||
})
|
||||
|
||||
function xmlTransform(_, prop) {
|
||||
return 'xml:' + prop.slice(3).toLowerCase()
|
||||
}
|
||||
16
node_modules/property-information/lib/xmlns.js
generated
vendored
Normal file
16
node_modules/property-information/lib/xmlns.js
generated
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
'use strict'
|
||||
|
||||
var create = require('./util/create')
|
||||
var caseInsensitiveTransform = require('./util/case-insensitive-transform')
|
||||
|
||||
module.exports = create({
|
||||
space: 'xmlns',
|
||||
attributes: {
|
||||
xmlnsxlink: 'xmlns:xlink'
|
||||
},
|
||||
transform: caseInsensitiveTransform,
|
||||
properties: {
|
||||
xmlns: null,
|
||||
xmlnsXLink: null
|
||||
}
|
||||
})
|
||||
22
node_modules/property-information/license
generated
vendored
Normal file
22
node_modules/property-information/license
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
(The MIT License)
|
||||
|
||||
Copyright (c) 2015 Titus Wormer <mailto:tituswormer@gmail.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
'Software'), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
7
node_modules/property-information/normalize.js
generated
vendored
Normal file
7
node_modules/property-information/normalize.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = normalize
|
||||
|
||||
function normalize(value) {
|
||||
return value.toLowerCase().replace(/\b[:-]\b/g, '')
|
||||
}
|
||||
142
node_modules/property-information/package.json
generated
vendored
Normal file
142
node_modules/property-information/package.json
generated
vendored
Normal file
@ -0,0 +1,142 @@
|
||||
{
|
||||
"_from": "property-information@^4.0.0",
|
||||
"_id": "property-information@4.2.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-TlgDPagHh+eBKOnH2VYvk8qbwsCG/TAJdmTL7f1PROUcSO8qt/KSmShEQ/OKvock8X9tFjtqjCScyOkkkvIKVQ==",
|
||||
"_location": "/property-information",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "property-information@^4.0.0",
|
||||
"name": "property-information",
|
||||
"escapedName": "property-information",
|
||||
"rawSpec": "^4.0.0",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "^4.0.0"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/hast-to-hyperscript",
|
||||
"/hast-util-from-parse5",
|
||||
"/hast-util-to-html",
|
||||
"/hast-util-to-parse5",
|
||||
"/hastscript"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/property-information/-/property-information-4.2.0.tgz",
|
||||
"_shasum": "f0e66e07cbd6fed31d96844d958d153ad3eb486e",
|
||||
"_spec": "property-information@^4.0.0",
|
||||
"_where": "/Users/stefanfejes/Projects/30-seconds-of-python-code/node_modules/hast-util-from-parse5",
|
||||
"author": {
|
||||
"name": "Titus Wormer",
|
||||
"email": "tituswormer@gmail.com",
|
||||
"url": "http://wooorm.com"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/wooorm/property-information/issues"
|
||||
},
|
||||
"bundleDependencies": false,
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Titus Wormer",
|
||||
"email": "tituswormer@gmail.com",
|
||||
"url": "http://wooorm.com"
|
||||
},
|
||||
{
|
||||
"name": "Dustin Deus",
|
||||
"email": "deusdustin@gmail.com",
|
||||
"url": "http://starptech.de"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"xtend": "^4.0.1"
|
||||
},
|
||||
"deprecated": false,
|
||||
"description": "Information for HTML properties",
|
||||
"devDependencies": {
|
||||
"alpha-sort": "^2.0.1",
|
||||
"arr-union": "^3.1.0",
|
||||
"bail": "^1.0.3",
|
||||
"browserify": "^16.0.0",
|
||||
"concat-stream": "^1.6.2",
|
||||
"html-element-attributes": "^2.0.0",
|
||||
"mdast-util-to-string": "^1.0.4",
|
||||
"mdast-zone": "^3.0.1",
|
||||
"nyc": "^12.0.0",
|
||||
"object.values": "^1.0.4",
|
||||
"prettier": "^1.13.7",
|
||||
"remark-cli": "^5.0.0",
|
||||
"remark-frontmatter": "^1.2.0",
|
||||
"remark-parse": "^5.0.0",
|
||||
"remark-preset-wooorm": "^4.0.0",
|
||||
"svg-element-attributes": "^1.2.1",
|
||||
"tape": "^4.2.0",
|
||||
"tinyify": "^2.4.3",
|
||||
"unified": "^7.0.0",
|
||||
"unist-builder": "^1.0.2",
|
||||
"unist-util-visit": "^1.3.1",
|
||||
"xo": "^0.21.0"
|
||||
},
|
||||
"files": [
|
||||
"index.js",
|
||||
"html.js",
|
||||
"svg.js",
|
||||
"normalize.js",
|
||||
"find.js",
|
||||
"lib/"
|
||||
],
|
||||
"homepage": "https://github.com/wooorm/property-information#readme",
|
||||
"keywords": [
|
||||
"html",
|
||||
"property",
|
||||
"attribute",
|
||||
"information",
|
||||
"info"
|
||||
],
|
||||
"license": "MIT",
|
||||
"name": "property-information",
|
||||
"nyc": {
|
||||
"check-coverage": true,
|
||||
"lines": 100,
|
||||
"functions": 100,
|
||||
"branches": 100
|
||||
},
|
||||
"prettier": {
|
||||
"tabWidth": 2,
|
||||
"useTabs": false,
|
||||
"singleQuote": true,
|
||||
"bracketSpacing": false,
|
||||
"semi": false,
|
||||
"trailingComma": "none"
|
||||
},
|
||||
"remarkConfig": {
|
||||
"plugins": [
|
||||
"./script/list",
|
||||
"preset-wooorm"
|
||||
]
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/wooorm/property-information.git"
|
||||
},
|
||||
"scripts": {
|
||||
"build": "npm run build-bundle && npm run build-mangle",
|
||||
"build-bundle": "browserify index.js -s propertyInformation > property-information.js",
|
||||
"build-mangle": "browserify index.js -s propertyInformation -p tinyify > property-information.min.js",
|
||||
"format": "remark . -qfo && prettier --write \"**/*.js\" && xo --fix",
|
||||
"generate": "node script/generate-react",
|
||||
"test": "npm run generate && npm run format && npm run build && npm run test-coverage",
|
||||
"test-api": "node test",
|
||||
"test-coverage": "nyc --reporter lcov tape test.js"
|
||||
},
|
||||
"version": "4.2.0",
|
||||
"xo": {
|
||||
"prettier": true,
|
||||
"esnext": false,
|
||||
"rules": {
|
||||
"guard-for-in": "off"
|
||||
},
|
||||
"ignore": [
|
||||
"property-information.js"
|
||||
]
|
||||
}
|
||||
}
|
||||
819
node_modules/property-information/readme.md
generated
vendored
Normal file
819
node_modules/property-information/readme.md
generated
vendored
Normal file
@ -0,0 +1,819 @@
|
||||
# property-information [![Build Status][build-badge]][build-status] [![Coverage Status][coverage-badge]][coverage-status]
|
||||
|
||||
Information for properties and attributes on the web-platform (HTML, SVG, ARIA,
|
||||
XML, XMLNS, XLink).
|
||||
|
||||
This package follows a sensible naming scheme as defined by [HAST][]
|
||||
|
||||
## Installation
|
||||
|
||||
[npm][]:
|
||||
|
||||
```bash
|
||||
npm install property-information
|
||||
```
|
||||
|
||||
## Table of Contents
|
||||
|
||||
* [Usage](#usage)
|
||||
* [API](#api)
|
||||
* [propertyInformation.find(schema, name)](#propertyinformationfindschema-name)
|
||||
* [propertyInformation.normalize(name)](#propertyinformationnormalizename)
|
||||
* [propertyInformation.html](#propertyinformationhtml)
|
||||
* [propertyInformation.svg](#propertyinformationsvg)
|
||||
* [Support](#support)
|
||||
* [Related](#related)
|
||||
* [License](#license)
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
var info = require('property-information')
|
||||
|
||||
console.log(info.find(info.html, 'className'))
|
||||
// Or: info.find(info.html, 'class')
|
||||
console.log(info.find(info.svg, 'horiz-adv-x'))
|
||||
// Or: info.find(info.svg, 'horizAdvX')
|
||||
console.log(info.find(info.svg, 'xlink:arcrole'))
|
||||
// Or: info.find(info.svg, 'xLinkArcRole')
|
||||
console.log(info.find(info.html, 'xmlLang'))
|
||||
// Or: info.find(info.html, 'xml:lang')
|
||||
console.log(info.find(info.html, 'ariaValueNow'))
|
||||
// Or: info.find(info.html, 'aria-valuenow')
|
||||
```
|
||||
|
||||
Yields:
|
||||
|
||||
```js
|
||||
{ space: 'html',
|
||||
attribute: 'class',
|
||||
property: 'className',
|
||||
spaceSeparated: true }
|
||||
{ space: 'svg',
|
||||
attribute: 'horiz-adv-x',
|
||||
property: 'horizAdvX',
|
||||
number: true }
|
||||
{ space: 'xlink', attribute: 'xlink:arcrole', property: 'xLinkArcrole' }
|
||||
{ space: 'xml', attribute: 'xml:lang', property: 'xmlLang' }
|
||||
{ attribute: 'aria-valuenow', property: 'ariaValueNow', number: true }
|
||||
```
|
||||
|
||||
## API
|
||||
|
||||
### `propertyInformation.find(schema, name)`
|
||||
|
||||
Look up info on a property.
|
||||
|
||||
In most cases, the given `schema` contains info on the property.
|
||||
All standard, most legacy, and some non-standard properties are supported.
|
||||
For these cases, the returned [`Info`][info] has hints about value of the
|
||||
property.
|
||||
|
||||
`name` can be a [valid data attribute or property][data], in which case an
|
||||
[`Info`][info] object with the correctly cased `attribute` and `property` is
|
||||
returned.
|
||||
|
||||
`name` can be an unknown attribute, in which case an [`Info`][info] object
|
||||
with `attribute` and `property` set to the given name is returned.
|
||||
It is not recommended to provide unsupported legacy or recently specced
|
||||
properties.
|
||||
|
||||
#### Parameters
|
||||
|
||||
* `schema` ([`Schema`][schema])
|
||||
— Either `propertyInformation.html` or `propertyInformation.svg`
|
||||
* `name` (`string`)
|
||||
— An attribute-like or property-like name that is passed through
|
||||
[`normalize`][normalize] to find the correct info
|
||||
|
||||
#### Returns
|
||||
|
||||
[`Info`][info].
|
||||
|
||||
#### Note
|
||||
|
||||
`find` can be accessed directly from `require('property-information/find')` as
|
||||
well.
|
||||
|
||||
#### Example
|
||||
|
||||
Aside from the aforementioned example, which shows known HTML, SVG, XML, XLink,
|
||||
and ARIA support, data properties and attributes are also supported:
|
||||
|
||||
```js
|
||||
console.log(info.find(info.html, 'data-date-of-birth'))
|
||||
// Or: info.find(info.html, 'dataDateOfBirth')
|
||||
```
|
||||
|
||||
Yields:
|
||||
|
||||
```js
|
||||
{ attribute: 'data-date-of-birth', property: 'dataDateOfBirth' }
|
||||
```
|
||||
|
||||
Unknown values are passed through untouched:
|
||||
|
||||
```js
|
||||
console.log(info.find(info.html, 'un-Known'))
|
||||
```
|
||||
|
||||
Yields:
|
||||
|
||||
```js
|
||||
{ attribute: 'un-Known', property: 'un-Known' }
|
||||
```
|
||||
|
||||
### `propertyInformation.normalize(name)`
|
||||
|
||||
Get the cleaned case-insensitive form of an attribute or a property.
|
||||
|
||||
This removed all non-alphanumerical characters from `name`, and lowercases
|
||||
the result.
|
||||
|
||||
#### Parameters
|
||||
|
||||
* `name` (`string`) — An attribute-like or property-like name
|
||||
|
||||
#### Returns
|
||||
|
||||
`string` that can be used to look up the properly cased property in a
|
||||
[`Schema`][schema].
|
||||
|
||||
#### Note
|
||||
|
||||
`normalize` can be accessed directly from
|
||||
`require('property-information/normalize')` as well.
|
||||
|
||||
#### Example
|
||||
|
||||
```js
|
||||
info.html.normal[info.normalize('for')] // => 'htmlFor'
|
||||
info.svg.normal[info.normalize('VIEWBOX')] // => 'viewBox'
|
||||
info.html.normal[info.normalize('unknown')] // => undefined
|
||||
```
|
||||
|
||||
### `propertyInformation.html`
|
||||
|
||||
### `propertyInformation.svg`
|
||||
|
||||
[`Schema`][schema] for either HTML or SVG, containing info on properties from
|
||||
the primary space (HTML or SVG) and related embedded spaces (ARIA, XML, XMLNS,
|
||||
XLink).
|
||||
|
||||
#### Note
|
||||
|
||||
`html` and `svg` can be accessed directly from
|
||||
`require('property-information/html')` and `require('property-information/svg')`
|
||||
as well.
|
||||
|
||||
#### Example
|
||||
|
||||
```js
|
||||
console.log(info.html.property.htmlFor)
|
||||
console.log(info.svg.property.viewBox)
|
||||
console.log(info.html.property.unknown)
|
||||
```
|
||||
|
||||
Yields:
|
||||
|
||||
```js
|
||||
{ space: 'html',
|
||||
attribute: 'for',
|
||||
property: 'htmlFor',
|
||||
spaceSeparated: true }
|
||||
{ space: 'svg', attribute: 'viewBox', property: 'viewBox' }
|
||||
undefined
|
||||
```
|
||||
|
||||
#### `Schema`
|
||||
|
||||
A schema for a primary space.
|
||||
|
||||
* `space` (`'html'` or `'svg'`) — Primary space of the schema
|
||||
* `normal` (`Object.<string>`) — Object mapping normalized attributes and
|
||||
properties to properly cased properties
|
||||
* `property` ([`Object.<Info>`][info]) — Object mapping properties to info
|
||||
|
||||
#### `Info`
|
||||
|
||||
Info on a property.
|
||||
|
||||
* `space` (`'html'`, `'svg'`, `'xml'`, `'xlink'`, `'xmlns'`, optional)
|
||||
— [Space][namespace] of the property
|
||||
* `attribute` (`string`) — Attribute name for the property that could be used
|
||||
in markup (for example: `'aria-describedby'`, `'allowfullscreen'`,
|
||||
`'xml:lang'`, `'for'`, or `'charoff'`)
|
||||
* `property` (`string`) — JavaScript-style camel-cased name, based on the
|
||||
DOM, but sometimes different (for example: `'ariaDescribedBy'`,
|
||||
`'allowFullScreen'`, `'xmlLang'`, `'htmlFor'`, `'chOff'`)
|
||||
* `boolean` (`boolean`) — The property is `boolean`.
|
||||
The default value of this property is false, so it can be omitted
|
||||
* `booleanish` (`boolean`) — The property is a `boolean`.
|
||||
The default value of this property is something other than false, so
|
||||
`false` must persist.
|
||||
The value can hold a string (as is the case with `ariaChecked` and its
|
||||
`'mixed'` value)
|
||||
* `overloadedBoolean` (`boolean`) — The property is `boolean`.
|
||||
The default value of this property is false, so it can be omitted.
|
||||
The value can hold a string (as is the case with `download` as its value
|
||||
reflects the name to use for the downloaded file)
|
||||
* `number` (`boolean`) — The property is `number`.
|
||||
These values can sometimes hold a string
|
||||
* `spaceSeparated` (`boolean`) — The property is a list separated by spaces
|
||||
(for example, `className`)
|
||||
* `commaSeparated` (`boolean`) — The property is a list separated by commas
|
||||
(for example, `srcSet`)
|
||||
* `commaOrSpaceSeparated` (`boolean`) — The property is a list separated by
|
||||
commas or spaces (for example, `strokeDashArray`)
|
||||
* `mustUseProperty` (`boolean`) — If a DOM is used, setting the property
|
||||
should be used for the change to take effect (this is true only for
|
||||
`'checked'`, `'multiple'`, `'muted'`, and `'selected'`)
|
||||
* `defined` (`boolean`) — The property is [defined by a space](#support).
|
||||
This is true for values in HTML (including data and ARIA), SVG, XML,
|
||||
XMLNS, and XLink.
|
||||
These values can only be accessed through `find`.
|
||||
|
||||
## Support
|
||||
|
||||
<!--list start-->
|
||||
|
||||
| Property | Attribute | Space |
|
||||
| ---------------------------- | ------------------------------ | ------------- |
|
||||
| `aLink` | `alink` | `html` |
|
||||
| `abbr` | `abbr` | `html` |
|
||||
| `about` | `about` | `svg` |
|
||||
| `accentHeight` | `accent-height` | `svg` |
|
||||
| `accept` | `accept` | `html` |
|
||||
| `acceptCharset` | `accept-charset` | `html` |
|
||||
| `accessKey` | `accesskey` | `html` |
|
||||
| `accumulate` | `accumulate` | `svg` |
|
||||
| `action` | `action` | `html` |
|
||||
| `additive` | `additive` | `svg` |
|
||||
| `align` | `align` | `html` |
|
||||
| `alignmentBaseline` | `alignment-baseline` | `svg` |
|
||||
| `allowFullScreen` | `allowfullscreen` | `html` |
|
||||
| `allowPaymentRequest` | `allowpaymentrequest` | `html` |
|
||||
| `allowTransparency` | `allowtransparency` | `html` |
|
||||
| `allowUserMedia` | `allowusermedia` | `html` |
|
||||
| `alphabetic` | `alphabetic` | `svg` |
|
||||
| `alt` | `alt` | `html` |
|
||||
| `amplitude` | `amplitude` | `svg` |
|
||||
| `arabicForm` | `arabic-form` | `svg` |
|
||||
| `archive` | `archive` | `html` |
|
||||
| `ariaActiveDescendant` | `aria-activedescendant` | |
|
||||
| `ariaAtomic` | `aria-atomic` | |
|
||||
| `ariaAutoComplete` | `aria-autocomplete` | |
|
||||
| `ariaBusy` | `aria-busy` | |
|
||||
| `ariaChecked` | `aria-checked` | |
|
||||
| `ariaColCount` | `aria-colcount` | |
|
||||
| `ariaColIndex` | `aria-colindex` | |
|
||||
| `ariaColSpan` | `aria-colspan` | |
|
||||
| `ariaControls` | `aria-controls` | |
|
||||
| `ariaCurrent` | `aria-current` | |
|
||||
| `ariaDescribedBy` | `aria-describedby` | |
|
||||
| `ariaDetails` | `aria-details` | |
|
||||
| `ariaDisabled` | `aria-disabled` | |
|
||||
| `ariaDropEffect` | `aria-dropeffect` | |
|
||||
| `ariaErrorMessage` | `aria-errormessage` | |
|
||||
| `ariaExpanded` | `aria-expanded` | |
|
||||
| `ariaFlowTo` | `aria-flowto` | |
|
||||
| `ariaGrabbed` | `aria-grabbed` | |
|
||||
| `ariaHasPopup` | `aria-haspopup` | |
|
||||
| `ariaHidden` | `aria-hidden` | |
|
||||
| `ariaInvalid` | `aria-invalid` | |
|
||||
| `ariaKeyShortcuts` | `aria-keyshortcuts` | |
|
||||
| `ariaLabel` | `aria-label` | |
|
||||
| `ariaLabelledBy` | `aria-labelledby` | |
|
||||
| `ariaLevel` | `aria-level` | |
|
||||
| `ariaLive` | `aria-live` | |
|
||||
| `ariaModal` | `aria-modal` | |
|
||||
| `ariaMultiLine` | `aria-multiline` | |
|
||||
| `ariaMultiSelectable` | `aria-multiselectable` | |
|
||||
| `ariaOrientation` | `aria-orientation` | |
|
||||
| `ariaOwns` | `aria-owns` | |
|
||||
| `ariaPlaceholder` | `aria-placeholder` | |
|
||||
| `ariaPosInSet` | `aria-posinset` | |
|
||||
| `ariaPressed` | `aria-pressed` | |
|
||||
| `ariaReadOnly` | `aria-readonly` | |
|
||||
| `ariaRelevant` | `aria-relevant` | |
|
||||
| `ariaRequired` | `aria-required` | |
|
||||
| `ariaRoleDescription` | `aria-roledescription` | |
|
||||
| `ariaRowCount` | `aria-rowcount` | |
|
||||
| `ariaRowIndex` | `aria-rowindex` | |
|
||||
| `ariaRowSpan` | `aria-rowspan` | |
|
||||
| `ariaSelected` | `aria-selected` | |
|
||||
| `ariaSetSize` | `aria-setsize` | |
|
||||
| `ariaSort` | `aria-sort` | |
|
||||
| `ariaValueMax` | `aria-valuemax` | |
|
||||
| `ariaValueMin` | `aria-valuemin` | |
|
||||
| `ariaValueNow` | `aria-valuenow` | |
|
||||
| `ariaValueText` | `aria-valuetext` | |
|
||||
| `as` | `as` | `html` |
|
||||
| `ascent` | `ascent` | `svg` |
|
||||
| `async` | `async` | `html` |
|
||||
| `attributeName` | `attributeName` | `svg` |
|
||||
| `attributeType` | `attributeType` | `svg` |
|
||||
| `autoCapitalize` | `autocapitalize` | `html` |
|
||||
| `autoComplete` | `autocomplete` | `html` |
|
||||
| `autoCorrect` | `autocorrect` | `html` |
|
||||
| `autoFocus` | `autofocus` | `html` |
|
||||
| `autoPlay` | `autoplay` | `html` |
|
||||
| `autoSave` | `autosave` | `html` |
|
||||
| `axis` | `axis` | `html` |
|
||||
| `azimuth` | `azimuth` | `svg` |
|
||||
| `background` | `background` | `html` |
|
||||
| `bandwidth` | `bandwidth` | `svg` |
|
||||
| `baseFrequency` | `baseFrequency` | `svg` |
|
||||
| `baseProfile` | `baseProfile` | `svg` |
|
||||
| `baselineShift` | `baseline-shift` | `svg` |
|
||||
| `bbox` | `bbox` | `svg` |
|
||||
| `begin` | `begin` | `svg` |
|
||||
| `bgColor` | `bgcolor` | `html` |
|
||||
| `bias` | `bias` | `svg` |
|
||||
| `border` | `border` | `html` |
|
||||
| `borderColor` | `bordercolor` | `html` |
|
||||
| `bottomMargin` | `bottommargin` | `html` |
|
||||
| `by` | `by` | `svg` |
|
||||
| `calcMode` | `calcMode` | `svg` |
|
||||
| `capHeight` | `cap-height` | `svg` |
|
||||
| `capture` | `capture` | `html` |
|
||||
| `cellPadding` | `cellpadding` | `html` |
|
||||
| `cellSpacing` | `cellspacing` | `html` |
|
||||
| `char` | `char` | `html` |
|
||||
| `charOff` | `charoff` | `html` |
|
||||
| `charSet` | `charset` | `html` |
|
||||
| `checked` | `checked` | `html` |
|
||||
| `cite` | `cite` | `html` |
|
||||
| `classId` | `classid` | `html` |
|
||||
| `className` | `class` | `svg`, `html` |
|
||||
| `clear` | `clear` | `html` |
|
||||
| `clip` | `clip` | `svg` |
|
||||
| `clipPath` | `clip-path` | `svg` |
|
||||
| `clipPathUnits` | `clipPathUnits` | `svg` |
|
||||
| `clipRule` | `clip-rule` | `svg` |
|
||||
| `code` | `code` | `html` |
|
||||
| `codeBase` | `codebase` | `html` |
|
||||
| `codeType` | `codetype` | `html` |
|
||||
| `colSpan` | `colspan` | `html` |
|
||||
| `color` | `color` | `svg`, `html` |
|
||||
| `colorInterpolation` | `color-interpolation` | `svg` |
|
||||
| `colorInterpolationFilters` | `color-interpolation-filters` | `svg` |
|
||||
| `colorProfile` | `color-profile` | `svg` |
|
||||
| `colorRendering` | `color-rendering` | `svg` |
|
||||
| `cols` | `cols` | `html` |
|
||||
| `compact` | `compact` | `html` |
|
||||
| `content` | `content` | `svg`, `html` |
|
||||
| `contentEditable` | `contenteditable` | `html` |
|
||||
| `contentScriptType` | `contentScriptType` | `svg` |
|
||||
| `contentStyleType` | `contentStyleType` | `svg` |
|
||||
| `controls` | `controls` | `html` |
|
||||
| `controlsList` | `controlslist` | `html` |
|
||||
| `coords` | `coords` | `html` |
|
||||
| `crossOrigin` | `crossorigin` | `svg`, `html` |
|
||||
| `cursor` | `cursor` | `svg` |
|
||||
| `cx` | `cx` | `svg` |
|
||||
| `cy` | `cy` | `svg` |
|
||||
| `d` | `d` | `svg` |
|
||||
| `data` | `data` | `html` |
|
||||
| `dataType` | `datatype` | `svg` |
|
||||
| `dateTime` | `datetime` | `html` |
|
||||
| `declare` | `declare` | `html` |
|
||||
| `decoding` | `decoding` | `html` |
|
||||
| `default` | `default` | `html` |
|
||||
| `defaultAction` | `defaultAction` | `svg` |
|
||||
| `defer` | `defer` | `html` |
|
||||
| `descent` | `descent` | `svg` |
|
||||
| `diffuseConstant` | `diffuseConstant` | `svg` |
|
||||
| `dir` | `dir` | `html` |
|
||||
| `dirName` | `dirname` | `html` |
|
||||
| `direction` | `direction` | `svg` |
|
||||
| `disabled` | `disabled` | `html` |
|
||||
| `display` | `display` | `svg` |
|
||||
| `divisor` | `divisor` | `svg` |
|
||||
| `dominantBaseline` | `dominant-baseline` | `svg` |
|
||||
| `download` | `download` | `svg`, `html` |
|
||||
| `draggable` | `draggable` | `html` |
|
||||
| `dur` | `dur` | `svg` |
|
||||
| `dx` | `dx` | `svg` |
|
||||
| `dy` | `dy` | `svg` |
|
||||
| `edgeMode` | `edgeMode` | `svg` |
|
||||
| `editable` | `editable` | `svg` |
|
||||
| `elevation` | `elevation` | `svg` |
|
||||
| `enableBackground` | `enable-background` | `svg` |
|
||||
| `encType` | `enctype` | `html` |
|
||||
| `end` | `end` | `svg` |
|
||||
| `event` | `event` | `svg`, `html` |
|
||||
| `exponent` | `exponent` | `svg` |
|
||||
| `externalResourcesRequired` | `externalResourcesRequired` | `svg` |
|
||||
| `face` | `face` | `html` |
|
||||
| `fill` | `fill` | `svg` |
|
||||
| `fillOpacity` | `fill-opacity` | `svg` |
|
||||
| `fillRule` | `fill-rule` | `svg` |
|
||||
| `filter` | `filter` | `svg` |
|
||||
| `filterRes` | `filterRes` | `svg` |
|
||||
| `filterUnits` | `filterUnits` | `svg` |
|
||||
| `floodColor` | `flood-color` | `svg` |
|
||||
| `floodOpacity` | `flood-opacity` | `svg` |
|
||||
| `focusHighlight` | `focusHighlight` | `svg` |
|
||||
| `focusable` | `focusable` | `svg` |
|
||||
| `fontFamily` | `font-family` | `svg` |
|
||||
| `fontSize` | `font-size` | `svg` |
|
||||
| `fontSizeAdjust` | `font-size-adjust` | `svg` |
|
||||
| `fontStretch` | `font-stretch` | `svg` |
|
||||
| `fontStyle` | `font-style` | `svg` |
|
||||
| `fontVariant` | `font-variant` | `svg` |
|
||||
| `fontWeight` | `font-weight` | `svg` |
|
||||
| `form` | `form` | `html` |
|
||||
| `formAction` | `formaction` | `html` |
|
||||
| `formEncType` | `formenctype` | `html` |
|
||||
| `formMethod` | `formmethod` | `html` |
|
||||
| `formNoValidate` | `formnovalidate` | `html` |
|
||||
| `formTarget` | `formtarget` | `html` |
|
||||
| `format` | `format` | `svg` |
|
||||
| `fr` | `fr` | `svg` |
|
||||
| `frame` | `frame` | `html` |
|
||||
| `frameBorder` | `frameborder` | `html` |
|
||||
| `from` | `from` | `svg` |
|
||||
| `fx` | `fx` | `svg` |
|
||||
| `fy` | `fy` | `svg` |
|
||||
| `g1` | `g1` | `svg` |
|
||||
| `g2` | `g2` | `svg` |
|
||||
| `glyphName` | `glyph-name` | `svg` |
|
||||
| `glyphOrientationHorizontal` | `glyph-orientation-horizontal` | `svg` |
|
||||
| `glyphOrientationVertical` | `glyph-orientation-vertical` | `svg` |
|
||||
| `glyphRef` | `glyphRef` | `svg` |
|
||||
| `gradientTransform` | `gradientTransform` | `svg` |
|
||||
| `gradientUnits` | `gradientUnits` | `svg` |
|
||||
| `hSpace` | `hspace` | `html` |
|
||||
| `handler` | `handler` | `svg` |
|
||||
| `hanging` | `hanging` | `svg` |
|
||||
| `hatchContentUnits` | `hatchContentUnits` | `svg` |
|
||||
| `hatchUnits` | `hatchUnits` | `svg` |
|
||||
| `headers` | `headers` | `html` |
|
||||
| `height` | `height` | `svg`, `html` |
|
||||
| `hidden` | `hidden` | `html` |
|
||||
| `high` | `high` | `html` |
|
||||
| `horizAdvX` | `horiz-adv-x` | `svg` |
|
||||
| `horizOriginX` | `horiz-origin-x` | `svg` |
|
||||
| `horizOriginY` | `horiz-origin-y` | `svg` |
|
||||
| `href` | `href` | `svg`, `html` |
|
||||
| `hrefLang` | `hreflang` | `svg`, `html` |
|
||||
| `htmlFor` | `for` | `html` |
|
||||
| `httpEquiv` | `http-equiv` | `html` |
|
||||
| `id` | `id` | `svg`, `html` |
|
||||
| `ideographic` | `ideographic` | `svg` |
|
||||
| `imageRendering` | `image-rendering` | `svg` |
|
||||
| `in` | `in` | `svg` |
|
||||
| `in2` | `in2` | `svg` |
|
||||
| `initialVisibility` | `initialVisibility` | `svg` |
|
||||
| `inputMode` | `inputmode` | `html` |
|
||||
| `integrity` | `integrity` | `html` |
|
||||
| `intercept` | `intercept` | `svg` |
|
||||
| `is` | `is` | `html` |
|
||||
| `isMap` | `ismap` | `html` |
|
||||
| `itemId` | `itemid` | `html` |
|
||||
| `itemProp` | `itemprop` | `html` |
|
||||
| `itemRef` | `itemref` | `html` |
|
||||
| `itemScope` | `itemscope` | `html` |
|
||||
| `itemType` | `itemtype` | `html` |
|
||||
| `k` | `k` | `svg` |
|
||||
| `k1` | `k1` | `svg` |
|
||||
| `k2` | `k2` | `svg` |
|
||||
| `k3` | `k3` | `svg` |
|
||||
| `k4` | `k4` | `svg` |
|
||||
| `kernelMatrix` | `kernelMatrix` | `svg` |
|
||||
| `kernelUnitLength` | `kernelUnitLength` | `svg` |
|
||||
| `kerning` | `kerning` | `svg` |
|
||||
| `keyPoints` | `keyPoints` | `svg` |
|
||||
| `keySplines` | `keySplines` | `svg` |
|
||||
| `keyTimes` | `keyTimes` | `svg` |
|
||||
| `kind` | `kind` | `html` |
|
||||
| `label` | `label` | `html` |
|
||||
| `lang` | `lang` | `svg`, `html` |
|
||||
| `language` | `language` | `html` |
|
||||
| `leftMargin` | `leftmargin` | `html` |
|
||||
| `lengthAdjust` | `lengthAdjust` | `svg` |
|
||||
| `letterSpacing` | `letter-spacing` | `svg` |
|
||||
| `lightingColor` | `lighting-color` | `svg` |
|
||||
| `limitingConeAngle` | `limitingConeAngle` | `svg` |
|
||||
| `link` | `link` | `html` |
|
||||
| `list` | `list` | `html` |
|
||||
| `local` | `local` | `svg` |
|
||||
| `longDesc` | `longdesc` | `html` |
|
||||
| `loop` | `loop` | `html` |
|
||||
| `low` | `low` | `html` |
|
||||
| `lowSrc` | `lowsrc` | `html` |
|
||||
| `manifest` | `manifest` | `html` |
|
||||
| `marginHeight` | `marginheight` | `html` |
|
||||
| `marginWidth` | `marginwidth` | `html` |
|
||||
| `markerEnd` | `marker-end` | `svg` |
|
||||
| `markerHeight` | `markerHeight` | `svg` |
|
||||
| `markerMid` | `marker-mid` | `svg` |
|
||||
| `markerStart` | `marker-start` | `svg` |
|
||||
| `markerUnits` | `markerUnits` | `svg` |
|
||||
| `markerWidth` | `markerWidth` | `svg` |
|
||||
| `mask` | `mask` | `svg` |
|
||||
| `maskContentUnits` | `maskContentUnits` | `svg` |
|
||||
| `maskUnits` | `maskUnits` | `svg` |
|
||||
| `mathematical` | `mathematical` | `svg` |
|
||||
| `max` | `max` | `svg`, `html` |
|
||||
| `maxLength` | `maxlength` | `html` |
|
||||
| `media` | `media` | `svg`, `html` |
|
||||
| `mediaCharacterEncoding` | `mediaCharacterEncoding` | `svg` |
|
||||
| `mediaContentEncodings` | `mediaContentEncodings` | `svg` |
|
||||
| `mediaSize` | `mediaSize` | `svg` |
|
||||
| `mediaTime` | `mediaTime` | `svg` |
|
||||
| `method` | `method` | `svg`, `html` |
|
||||
| `min` | `min` | `svg`, `html` |
|
||||
| `minLength` | `minlength` | `html` |
|
||||
| `mode` | `mode` | `svg` |
|
||||
| `multiple` | `multiple` | `html` |
|
||||
| `muted` | `muted` | `html` |
|
||||
| `name` | `name` | `svg`, `html` |
|
||||
| `navDown` | `nav-down` | `svg` |
|
||||
| `navDownLeft` | `nav-down-left` | `svg` |
|
||||
| `navDownRight` | `nav-down-right` | `svg` |
|
||||
| `navLeft` | `nav-left` | `svg` |
|
||||
| `navNext` | `nav-next` | `svg` |
|
||||
| `navPrev` | `nav-prev` | `svg` |
|
||||
| `navRight` | `nav-right` | `svg` |
|
||||
| `navUp` | `nav-up` | `svg` |
|
||||
| `navUpLeft` | `nav-up-left` | `svg` |
|
||||
| `navUpRight` | `nav-up-right` | `svg` |
|
||||
| `noHref` | `nohref` | `html` |
|
||||
| `noModule` | `nomodule` | `html` |
|
||||
| `noResize` | `noresize` | `html` |
|
||||
| `noShade` | `noshade` | `html` |
|
||||
| `noValidate` | `novalidate` | `html` |
|
||||
| `noWrap` | `nowrap` | `html` |
|
||||
| `nonce` | `nonce` | `html` |
|
||||
| `numOctaves` | `numOctaves` | `svg` |
|
||||
| `object` | `object` | `html` |
|
||||
| `observer` | `observer` | `svg` |
|
||||
| `offset` | `offset` | `svg` |
|
||||
| `opacity` | `opacity` | `svg` |
|
||||
| `open` | `open` | `html` |
|
||||
| `operator` | `operator` | `svg` |
|
||||
| `optimum` | `optimum` | `html` |
|
||||
| `order` | `order` | `svg` |
|
||||
| `orient` | `orient` | `svg` |
|
||||
| `orientation` | `orientation` | `svg` |
|
||||
| `origin` | `origin` | `svg` |
|
||||
| `overflow` | `overflow` | `svg` |
|
||||
| `overlay` | `overlay` | `svg` |
|
||||
| `overlinePosition` | `overline-position` | `svg` |
|
||||
| `overlineThickness` | `overline-thickness` | `svg` |
|
||||
| `paintOrder` | `paint-order` | `svg` |
|
||||
| `panose1` | `panose-1` | `svg` |
|
||||
| `path` | `path` | `svg` |
|
||||
| `pathLength` | `pathLength` | `svg` |
|
||||
| `pattern` | `pattern` | `html` |
|
||||
| `patternContentUnits` | `patternContentUnits` | `svg` |
|
||||
| `patternTransform` | `patternTransform` | `svg` |
|
||||
| `patternUnits` | `patternUnits` | `svg` |
|
||||
| `phase` | `phase` | `svg` |
|
||||
| `ping` | `ping` | `html` |
|
||||
| `pitch` | `pitch` | `svg` |
|
||||
| `placeholder` | `placeholder` | `html` |
|
||||
| `playbackOrder` | `playbackorder` | `svg` |
|
||||
| `playsInline` | `playsinline` | `html` |
|
||||
| `pointerEvents` | `pointer-events` | `svg` |
|
||||
| `points` | `points` | `svg` |
|
||||
| `pointsAtX` | `pointsAtX` | `svg` |
|
||||
| `pointsAtY` | `pointsAtY` | `svg` |
|
||||
| `pointsAtZ` | `pointsAtZ` | `svg` |
|
||||
| `poster` | `poster` | `html` |
|
||||
| `prefix` | `prefix` | `html` |
|
||||
| `preload` | `preload` | `html` |
|
||||
| `preserveAlpha` | `preserveAlpha` | `svg` |
|
||||
| `preserveAspectRatio` | `preserveAspectRatio` | `svg` |
|
||||
| `primitiveUnits` | `primitiveUnits` | `svg` |
|
||||
| `profile` | `profile` | `html` |
|
||||
| `prompt` | `prompt` | `html` |
|
||||
| `propagate` | `propagate` | `svg` |
|
||||
| `property` | `property` | `svg`, `html` |
|
||||
| `r` | `r` | `svg` |
|
||||
| `radius` | `radius` | `svg` |
|
||||
| `readOnly` | `readonly` | `html` |
|
||||
| `refX` | `refX` | `svg` |
|
||||
| `refY` | `refY` | `svg` |
|
||||
| `referrerPolicy` | `referrerpolicy` | `html` |
|
||||
| `rel` | `rel` | `svg`, `html` |
|
||||
| `renderingIntent` | `rendering-intent` | `svg` |
|
||||
| `repeatCount` | `repeatCount` | `svg` |
|
||||
| `repeatDur` | `repeatDur` | `svg` |
|
||||
| `required` | `required` | `html` |
|
||||
| `requiredExtensions` | `requiredExtensions` | `svg` |
|
||||
| `requiredFeatures` | `requiredFeatures` | `svg` |
|
||||
| `requiredFonts` | `requiredFonts` | `svg` |
|
||||
| `requiredFormats` | `requiredFormats` | `svg` |
|
||||
| `resource` | `resource` | `svg` |
|
||||
| `restart` | `restart` | `svg` |
|
||||
| `result` | `result` | `svg` |
|
||||
| `results` | `results` | `html` |
|
||||
| `rev` | `rev` | `svg`, `html` |
|
||||
| `reversed` | `reversed` | `html` |
|
||||
| `rightMargin` | `rightmargin` | `html` |
|
||||
| `role` | `role` | |
|
||||
| `rotate` | `rotate` | `svg` |
|
||||
| `rowSpan` | `rowspan` | `html` |
|
||||
| `rows` | `rows` | `html` |
|
||||
| `rules` | `rules` | `html` |
|
||||
| `rx` | `rx` | `svg` |
|
||||
| `ry` | `ry` | `svg` |
|
||||
| `sandbox` | `sandbox` | `html` |
|
||||
| `scale` | `scale` | `svg` |
|
||||
| `scheme` | `scheme` | `html` |
|
||||
| `scope` | `scope` | `html` |
|
||||
| `scoped` | `scoped` | `html` |
|
||||
| `scrolling` | `scrolling` | `html` |
|
||||
| `seamless` | `seamless` | `html` |
|
||||
| `security` | `security` | `html` |
|
||||
| `seed` | `seed` | `svg` |
|
||||
| `selected` | `selected` | `html` |
|
||||
| `shape` | `shape` | `html` |
|
||||
| `shapeRendering` | `shape-rendering` | `svg` |
|
||||
| `side` | `side` | `svg` |
|
||||
| `size` | `size` | `html` |
|
||||
| `sizes` | `sizes` | `html` |
|
||||
| `slope` | `slope` | `svg` |
|
||||
| `slot` | `slot` | `html` |
|
||||
| `snapshotTime` | `snapshotTime` | `svg` |
|
||||
| `spacing` | `spacing` | `svg` |
|
||||
| `span` | `span` | `html` |
|
||||
| `specularConstant` | `specularConstant` | `svg` |
|
||||
| `specularExponent` | `specularExponent` | `svg` |
|
||||
| `spellCheck` | `spellcheck` | `html` |
|
||||
| `spreadMethod` | `spreadMethod` | `svg` |
|
||||
| `src` | `src` | `html` |
|
||||
| `srcDoc` | `srcdoc` | `html` |
|
||||
| `srcLang` | `srclang` | `html` |
|
||||
| `srcSet` | `srcset` | `html` |
|
||||
| `standby` | `standby` | `html` |
|
||||
| `start` | `start` | `html` |
|
||||
| `startOffset` | `startOffset` | `svg` |
|
||||
| `stdDeviation` | `stdDeviation` | `svg` |
|
||||
| `stemh` | `stemh` | `svg` |
|
||||
| `stemv` | `stemv` | `svg` |
|
||||
| `step` | `step` | `html` |
|
||||
| `stitchTiles` | `stitchTiles` | `svg` |
|
||||
| `stopColor` | `stop-color` | `svg` |
|
||||
| `stopOpacity` | `stop-opacity` | `svg` |
|
||||
| `strikethroughPosition` | `strikethrough-position` | `svg` |
|
||||
| `strikethroughThickness` | `strikethrough-thickness` | `svg` |
|
||||
| `string` | `string` | `svg` |
|
||||
| `stroke` | `stroke` | `svg` |
|
||||
| `strokeDashArray` | `stroke-dasharray` | `svg` |
|
||||
| `strokeDashOffset` | `stroke-dashoffset` | `svg` |
|
||||
| `strokeLineCap` | `stroke-linecap` | `svg` |
|
||||
| `strokeLineJoin` | `stroke-linejoin` | `svg` |
|
||||
| `strokeMiterLimit` | `stroke-miterlimit` | `svg` |
|
||||
| `strokeOpacity` | `stroke-opacity` | `svg` |
|
||||
| `strokeWidth` | `stroke-width` | `svg` |
|
||||
| `style` | `style` | `svg`, `html` |
|
||||
| `summary` | `summary` | `html` |
|
||||
| `surfaceScale` | `surfaceScale` | `svg` |
|
||||
| `syncBehavior` | `syncBehavior` | `svg` |
|
||||
| `syncBehaviorDefault` | `syncBehaviorDefault` | `svg` |
|
||||
| `syncMaster` | `syncMaster` | `svg` |
|
||||
| `syncTolerance` | `syncTolerance` | `svg` |
|
||||
| `syncToleranceDefault` | `syncToleranceDefault` | `svg` |
|
||||
| `systemLanguage` | `systemLanguage` | `svg` |
|
||||
| `tabIndex` | `tabindex` | `svg`, `html` |
|
||||
| `tableValues` | `tableValues` | `svg` |
|
||||
| `target` | `target` | `svg`, `html` |
|
||||
| `targetX` | `targetX` | `svg` |
|
||||
| `targetY` | `targetY` | `svg` |
|
||||
| `text` | `text` | `html` |
|
||||
| `textAnchor` | `text-anchor` | `svg` |
|
||||
| `textDecoration` | `text-decoration` | `svg` |
|
||||
| `textLength` | `textLength` | `svg` |
|
||||
| `textRendering` | `text-rendering` | `svg` |
|
||||
| `timelineBegin` | `timelinebegin` | `svg` |
|
||||
| `title` | `title` | `svg`, `html` |
|
||||
| `to` | `to` | `svg` |
|
||||
| `topMargin` | `topmargin` | `html` |
|
||||
| `transform` | `transform` | `svg` |
|
||||
| `transformBehavior` | `transformBehavior` | `svg` |
|
||||
| `translate` | `translate` | `html` |
|
||||
| `type` | `type` | `svg`, `html` |
|
||||
| `typeMustMatch` | `typemustmatch` | `html` |
|
||||
| `typeOf` | `typeof` | `svg` |
|
||||
| `u1` | `u1` | `svg` |
|
||||
| `u2` | `u2` | `svg` |
|
||||
| `underlinePosition` | `underline-position` | `svg` |
|
||||
| `underlineThickness` | `underline-thickness` | `svg` |
|
||||
| `unicode` | `unicode` | `svg` |
|
||||
| `unicodeBidi` | `unicode-bidi` | `svg` |
|
||||
| `unicodeRange` | `unicode-range` | `svg` |
|
||||
| `unitsPerEm` | `units-per-em` | `svg` |
|
||||
| `unselectable` | `unselectable` | `html` |
|
||||
| `useMap` | `usemap` | `html` |
|
||||
| `vAlign` | `valign` | `html` |
|
||||
| `vAlphabetic` | `v-alphabetic` | `svg` |
|
||||
| `vHanging` | `v-hanging` | `svg` |
|
||||
| `vIdeographic` | `v-ideographic` | `svg` |
|
||||
| `vLink` | `vlink` | `html` |
|
||||
| `vMathematical` | `v-mathematical` | `svg` |
|
||||
| `vSpace` | `vspace` | `html` |
|
||||
| `value` | `value` | `html` |
|
||||
| `valueType` | `valuetype` | `html` |
|
||||
| `values` | `values` | `svg` |
|
||||
| `vectorEffect` | `vector-effect` | `svg` |
|
||||
| `version` | `version` | `svg`, `html` |
|
||||
| `vertAdvY` | `vert-adv-y` | `svg` |
|
||||
| `vertOriginX` | `vert-origin-x` | `svg` |
|
||||
| `vertOriginY` | `vert-origin-y` | `svg` |
|
||||
| `viewBox` | `viewBox` | `svg` |
|
||||
| `viewTarget` | `viewTarget` | `svg` |
|
||||
| `visibility` | `visibility` | `svg` |
|
||||
| `width` | `width` | `svg`, `html` |
|
||||
| `widths` | `widths` | `svg` |
|
||||
| `wordSpacing` | `word-spacing` | `svg` |
|
||||
| `wrap` | `wrap` | `html` |
|
||||
| `writingMode` | `writing-mode` | `svg` |
|
||||
| `x` | `x` | `svg` |
|
||||
| `x1` | `x1` | `svg` |
|
||||
| `x2` | `x2` | `svg` |
|
||||
| `xChannelSelector` | `xChannelSelector` | `svg` |
|
||||
| `xHeight` | `x-height` | `svg` |
|
||||
| `xLinkActuate` | `xlink:actuate` | `xlink` |
|
||||
| `xLinkArcRole` | `xlink:arcrole` | `xlink` |
|
||||
| `xLinkHref` | `xlink:href` | `xlink` |
|
||||
| `xLinkRole` | `xlink:role` | `xlink` |
|
||||
| `xLinkShow` | `xlink:show` | `xlink` |
|
||||
| `xLinkTitle` | `xlink:title` | `xlink` |
|
||||
| `xLinkType` | `xlink:type` | `xlink` |
|
||||
| `xmlBase` | `xml:base` | `xml` |
|
||||
| `xmlLang` | `xml:lang` | `xml` |
|
||||
| `xmlSpace` | `xml:space` | `xml` |
|
||||
| `xmlns` | `xmlns` | `xmlns` |
|
||||
| `xmlnsXLink` | `xmlns:xlink` | `xmlns` |
|
||||
| `y` | `y` | `svg` |
|
||||
| `y1` | `y1` | `svg` |
|
||||
| `y2` | `y2` | `svg` |
|
||||
| `yChannelSelector` | `yChannelSelector` | `svg` |
|
||||
| `z` | `z` | `svg` |
|
||||
| `zoomAndPan` | `zoomAndPan` | `svg` |
|
||||
|
||||
<!--list end-->
|
||||
|
||||
## Related
|
||||
|
||||
* [`web-namespaces`][namespace]
|
||||
— List of web namespaces
|
||||
* [`space-separated-tokens`](https://github.com/wooorm/space-separated-tokens)
|
||||
— Parse/stringify space-separated tokens
|
||||
* [`comma-separated-tokens`](https://github.com/wooorm/comma-separated-tokens)
|
||||
— Parse/stringify comma-separated tokens
|
||||
* [`html-tag-names`](https://github.com/wooorm/html-tag-names)
|
||||
— List of HTML tags
|
||||
* [`mathml-tag-names`](https://github.com/wooorm/mathml-tag-names)
|
||||
— List of MathML tags
|
||||
* [`svg-tag-names`](https://github.com/wooorm/svg-tag-names)
|
||||
— List of SVG tags
|
||||
* [`html-void-elements`](https://github.com/wooorm/html-void-elements)
|
||||
— List of void HTML tag-names
|
||||
* [`svg-element-attributes`](https://github.com/wooorm/svg-element-attributes)
|
||||
— Map of SVG elements to allowed attributes
|
||||
* [`html-element-attributes`](https://github.com/wooorm/html-element-attributes)
|
||||
— Map of HTML elements to allowed attributes
|
||||
* [`aria-attributes`](https://github.com/wooorm/aria-attributes)
|
||||
— List of ARIA attributes
|
||||
|
||||
## License
|
||||
|
||||
[MIT][license] © [Titus Wormer][author]
|
||||
|
||||
Derivative work based on [React][source] licensed under
|
||||
[BSD-3-Clause-Clear][source-license], © 2013-2015, Facebook, Inc.
|
||||
|
||||
[build-badge]: https://img.shields.io/travis/wooorm/property-information.svg?style=flat
|
||||
|
||||
[build-status]: https://travis-ci.org/wooorm/property-information
|
||||
|
||||
[coverage-badge]: https://img.shields.io/codecov/c/github/wooorm/property-information.svg
|
||||
|
||||
[coverage-status]: https://codecov.io/github/wooorm/property-information
|
||||
|
||||
[npm]: https://docs.npmjs.com/cli/install
|
||||
|
||||
[author]: http://wooorm.com
|
||||
|
||||
[license]: LICENSE
|
||||
|
||||
[source]: https://github.com/facebook/react/blob/f445dd9/src/renderers/dom/shared/HTMLDOMPropertyConfig.js
|
||||
|
||||
[source-license]: https://github.com/facebook/react/blob/88cdc27/LICENSE
|
||||
|
||||
[data]: https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/dataset
|
||||
|
||||
[namespace]: https://github.com/wooorm/web-namespaces
|
||||
|
||||
[info]: #info
|
||||
|
||||
[schema]: #schema
|
||||
|
||||
[normalize]: #propertyinformationnormalizename
|
||||
|
||||
[hast]: https://github.com/syntax-tree/hast#property-names
|
||||
10
node_modules/property-information/svg.js
generated
vendored
Normal file
10
node_modules/property-information/svg.js
generated
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
'use strict'
|
||||
|
||||
var merge = require('./lib/util/merge')
|
||||
var xlink = require('./lib/xlink')
|
||||
var xml = require('./lib/xml')
|
||||
var xmlns = require('./lib/xmlns')
|
||||
var aria = require('./lib/aria')
|
||||
var svg = require('./lib/svg')
|
||||
|
||||
module.exports = merge([xml, xlink, xmlns, aria, svg])
|
||||
Reference in New Issue
Block a user