12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558 |
- 'use strict';
- // http://www.w3.org/TR/SVG11/intro.html#Definitions
- exports.elemsGroups = {
- animation: ['animate', 'animateColor', 'animateMotion', 'animateTransform', 'set'],
- descriptive: ['desc', 'metadata', 'title'],
- shape: ['circle', 'ellipse', 'line', 'path', 'polygon', 'polyline', 'rect'],
- structural: ['defs', 'g', 'svg', 'symbol', 'use'],
- paintServer: ['solidColor', 'linearGradient', 'radialGradient', 'meshGradient', 'pattern', 'hatch'],
- nonRendering: ['linearGradient', 'radialGradient', 'pattern', 'clipPath', 'mask', 'marker', 'symbol', 'filter', 'solidColor'],
- container: ['a', 'defs', 'g', 'marker', 'mask', 'missing-glyph', 'pattern', 'svg', 'switch', 'symbol', 'foreignObject'],
- textContent: ['altGlyph', 'altGlyphDef', 'altGlyphItem', 'glyph', 'glyphRef', 'textPath', 'text', 'tref', 'tspan'],
- textContentChild: ['altGlyph', 'textPath', 'tref', 'tspan'],
- lightSource: ['feDiffuseLighting', 'feSpecularLighting', 'feDistantLight', 'fePointLight', 'feSpotLight'],
- filterPrimitive: ['feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feFlood', 'feGaussianBlur', 'feImage', 'feMerge', 'feMorphology', 'feOffset', 'feSpecularLighting', 'feTile', 'feTurbulence']
- };
- exports.pathElems = ['path', 'glyph', 'missing-glyph'];
- // http://www.w3.org/TR/SVG11/intro.html#Definitions
- exports.attrsGroups = {
- animationAddition: ['additive', 'accumulate'],
- animationAttributeTarget: ['attributeType', 'attributeName'],
- animationEvent: ['onbegin', 'onend', 'onrepeat', 'onload'],
- animationTiming: ['begin', 'dur', 'end', 'min', 'max', 'restart', 'repeatCount', 'repeatDur', 'fill'],
- animationValue: ['calcMode', 'values', 'keyTimes', 'keySplines', 'from', 'to', 'by'],
- conditionalProcessing: ['requiredFeatures', 'requiredExtensions', 'systemLanguage'],
- core: ['id', 'tabindex', 'xml:base', 'xml:lang', 'xml:space'],
- graphicalEvent: ['onfocusin', 'onfocusout', 'onactivate', 'onclick', 'onmousedown', 'onmouseup', 'onmouseover', 'onmousemove', 'onmouseout', 'onload'],
- presentation: [
- 'alignment-baseline',
- 'baseline-shift',
- 'clip',
- 'clip-path',
- 'clip-rule',
- 'color',
- 'color-interpolation',
- 'color-interpolation-filters',
- 'color-profile',
- 'color-rendering',
- 'cursor',
- 'direction',
- 'display',
- 'dominant-baseline',
- 'enable-background',
- 'fill',
- 'fill-opacity',
- 'fill-rule',
- 'filter',
- 'flood-color',
- 'flood-opacity',
- 'font-family',
- 'font-size',
- 'font-size-adjust',
- 'font-stretch',
- 'font-style',
- 'font-variant',
- 'font-weight',
- 'glyph-orientation-horizontal',
- 'glyph-orientation-vertical',
- 'image-rendering',
- 'letter-spacing',
- 'lighting-color',
- 'marker-end',
- 'marker-mid',
- 'marker-start',
- 'mask',
- 'opacity',
- 'overflow',
- 'paint-order',
- 'pointer-events',
- 'shape-rendering',
- 'stop-color',
- 'stop-opacity',
- 'stroke',
- 'stroke-dasharray',
- 'stroke-dashoffset',
- 'stroke-linecap',
- 'stroke-linejoin',
- 'stroke-miterlimit',
- 'stroke-opacity',
- 'stroke-width',
- 'text-anchor',
- 'text-decoration',
- 'text-overflow',
- 'text-rendering',
- 'transform',
- 'unicode-bidi',
- 'vector-effect',
- 'visibility',
- 'word-spacing',
- 'writing-mode'
- ],
- xlink: ['xlink:href', 'xlink:show', 'xlink:actuate', 'xlink:type', 'xlink:role', 'xlink:arcrole', 'xlink:title'],
- documentEvent: ['onunload', 'onabort', 'onerror', 'onresize', 'onscroll', 'onzoom'],
- filterPrimitive: ['x', 'y', 'width', 'height', 'result'],
- transferFunction: ['type', 'tableValues', 'slope', 'intercept', 'amplitude', 'exponent', 'offset']
- };
- exports.attrsGroupsDefaults = {
- core: {'xml:space': 'preserve'},
- filterPrimitive: {x: '0', y: '0', width: '100%', height: '100%'},
- presentation: {
- clip: 'auto',
- 'clip-path': 'none',
- 'clip-rule': 'nonzero',
- mask: 'none',
- opacity: '1',
- 'stop-color': '#000',
- 'stop-opacity': '1',
- 'fill-opacity': '1',
- 'fill-rule': 'nonzero',
- fill: '#000',
- stroke: 'none',
- 'stroke-width': '1',
- 'stroke-linecap': 'butt',
- 'stroke-linejoin': 'miter',
- 'stroke-miterlimit': '4',
- 'stroke-dasharray': 'none',
- 'stroke-dashoffset': '0',
- 'stroke-opacity': '1',
- 'paint-order': 'normal',
- 'vector-effect': 'none',
- display: 'inline',
- visibility: 'visible',
- 'marker-start': 'none',
- 'marker-mid': 'none',
- 'marker-end': 'none',
- 'color-interpolation': 'sRGB',
- 'color-interpolation-filters': 'linearRGB',
- 'color-rendering': 'auto',
- 'shape-rendering': 'auto',
- 'text-rendering': 'auto',
- 'image-rendering': 'auto',
- 'font-style': 'normal',
- 'font-variant': 'normal',
- 'font-weight': 'normal',
- 'font-stretch': 'normal',
- 'font-size': 'medium',
- 'font-size-adjust': 'none',
- kerning: 'auto',
- 'letter-spacing': 'normal',
- 'word-spacing': 'normal',
- 'text-decoration': 'none',
- 'text-anchor': 'start',
- 'text-overflow': 'clip',
- 'writing-mode': 'lr-tb',
- 'glyph-orientation-vertical': 'auto',
- 'glyph-orientation-horizontal': '0deg',
- direction: 'ltr',
- 'unicode-bidi': 'normal',
- 'dominant-baseline': 'auto',
- 'alignment-baseline': 'baseline',
- 'baseline-shift': 'baseline'
- },
- transferFunction: {slope: '1', intercept: '0', amplitude: '1', exponent: '1', offset: '0'}
- };
- // http://www.w3.org/TR/SVG11/eltindex.html
- exports.elems = {
- a: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'target'
- ],
- defaults: {
- target: '_self'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- altGlyph: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'x',
- 'y',
- 'dx',
- 'dy',
- 'glyphRef',
- 'format',
- 'rotate'
- ]
- },
- altGlyphDef: {
- attrsGroups: [
- 'core'
- ],
- content: [
- 'glyphRef'
- ]
- },
- altGlyphItem: {
- attrsGroups: [
- 'core'
- ],
- content: [
- 'glyphRef',
- 'altGlyphItem'
- ]
- },
- animate: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'animationAddition',
- 'animationAttributeTarget',
- 'animationEvent',
- 'animationTiming',
- 'animationValue',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'externalResourcesRequired'
- ],
- contentGroups: [
- 'descriptive'
- ]
- },
- animateColor: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'animationEvent',
- 'xlink',
- 'animationAttributeTarget',
- 'animationTiming',
- 'animationValue',
- 'animationAddition',
- 'presentation'
- ],
- attrs: [
- 'externalResourcesRequired'
- ],
- contentGroups: [
- 'descriptive'
- ]
- },
- animateMotion: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'animationEvent',
- 'xlink',
- 'animationTiming',
- 'animationValue',
- 'animationAddition'
- ],
- attrs: [
- 'externalResourcesRequired',
- 'path',
- 'keyPoints',
- 'rotate',
- 'origin'
- ],
- defaults: {
- 'rotate': '0'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'mpath'
- ]
- },
- animateTransform: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'animationEvent',
- 'xlink',
- 'animationAttributeTarget',
- 'animationTiming',
- 'animationValue',
- 'animationAddition'
- ],
- attrs: [
- 'externalResourcesRequired',
- 'type'
- ],
- contentGroups: [
- 'descriptive'
- ]
- },
- circle: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'cx',
- 'cy',
- 'r'
- ],
- defaults: {
- cx: '0',
- cy: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- clipPath: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'clipPathUnits'
- ],
- defaults: {
- clipPathUnits: 'userSpaceOnUse'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape'
- ],
- content: [
- 'text',
- 'use'
- ]
- },
- 'color-profile': {
- attrsGroups: [
- 'core',
- 'xlink'
- ],
- attrs: [
- 'local',
- 'name',
- 'rendering-intent'
- ],
- defaults: {
- name: 'sRGB',
- 'rendering-intent': 'auto'
- },
- contentGroups: [
- 'descriptive'
- ]
- },
- cursor: {
- attrsGroups: [
- 'core',
- 'conditionalProcessing',
- 'xlink'
- ],
- attrs: [
- 'externalResourcesRequired',
- 'x',
- 'y'
- ],
- defaults: {
- x: '0',
- y: '0'
- },
- contentGroups: [
- 'descriptive'
- ]
- },
- defs: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform'
- ],
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- desc: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'class',
- 'style'
- ]
- },
- ellipse: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'cx',
- 'cy',
- 'rx',
- 'ry'
- ],
- defaults: {
- cx: '0',
- cy: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- feBlend: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- // TODO: in - 'If no value is provided and this is the first filter primitive,
- // then this filter primitive will use SourceGraphic as its input'
- 'in',
- 'in2',
- 'mode'
- ],
- defaults: {
- mode: 'normal'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feColorMatrix: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'type',
- 'values'
- ],
- defaults: {
- type: 'matrix'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feComponentTransfer: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in'
- ],
- content: [
- 'feFuncA',
- 'feFuncB',
- 'feFuncG',
- 'feFuncR'
- ]
- },
- feComposite: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'in2',
- 'operator',
- 'k1',
- 'k2',
- 'k3',
- 'k4'
- ],
- defaults: {
- operator: 'over',
- k1: '0',
- k2: '0',
- k3: '0',
- k4: '0'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feConvolveMatrix: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'order',
- 'kernelMatrix',
- // TODO: divisor - 'The default value is the sum of all values in kernelMatrix,
- // with the exception that if the sum is zero, then the divisor is set to 1'
- 'divisor',
- 'bias',
- // TODO: targetX - 'By default, the convolution matrix is centered in X over each
- // pixel of the input image (i.e., targetX = floor ( orderX / 2 ))'
- 'targetX',
- 'targetY',
- 'edgeMode',
- // TODO: kernelUnitLength - 'The first number is the <dx> value. The second number
- // is the <dy> value. If the <dy> value is not specified, it defaults to the same value as <dx>'
- 'kernelUnitLength',
- 'preserveAlpha'
- ],
- defaults: {
- order: '3',
- bias: '0',
- edgeMode: 'duplicate',
- preserveAlpha: 'false'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feDiffuseLighting: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'surfaceScale',
- 'diffuseConstant',
- 'kernelUnitLength'
- ],
- defaults: {
- surfaceScale: '1',
- diffuseConstant: '1'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- // TODO: 'exactly one light source element, in any order'
- 'feDistantLight',
- 'fePointLight',
- 'feSpotLight'
- ]
- },
- feDisplacementMap: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'in2',
- 'scale',
- 'xChannelSelector',
- 'yChannelSelector'
- ],
- defaults: {
- scale: '0',
- xChannelSelector: 'A',
- yChannelSelector: 'A'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feDistantLight: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'azimuth',
- 'elevation'
- ],
- defaults: {
- azimuth: '0',
- elevation: '0'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feFlood: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style'
- ],
- content: [
- 'animate',
- 'animateColor',
- 'set'
- ]
- },
- feFuncA: {
- attrsGroups: [
- 'core',
- 'transferFunction'
- ],
- content: [
- 'set',
- 'animate'
- ]
- },
- feFuncB: {
- attrsGroups: [
- 'core',
- 'transferFunction'
- ],
- content: [
- 'set',
- 'animate'
- ]
- },
- feFuncG: {
- attrsGroups: [
- 'core',
- 'transferFunction'
- ],
- content: [
- 'set',
- 'animate'
- ]
- },
- feFuncR: {
- attrsGroups: [
- 'core',
- 'transferFunction'
- ],
- content: [
- 'set',
- 'animate'
- ]
- },
- feGaussianBlur: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'stdDeviation'
- ],
- defaults: {
- stdDeviation: '0'
- },
- content: [
- 'set',
- 'animate'
- ]
- },
- feImage: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'preserveAspectRatio',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- preserveAspectRatio: 'xMidYMid meet'
- },
- content: [
- 'animate',
- 'animateTransform',
- 'set'
- ]
- },
- feMerge: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style'
- ],
- content: [
- 'feMergeNode'
- ]
- },
- feMergeNode: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'in'
- ],
- content: [
- 'animate',
- 'set'
- ]
- },
- feMorphology: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'operator',
- 'radius'
- ],
- defaults: {
- operator: 'erode',
- radius: '0'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feOffset: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'dx',
- 'dy'
- ],
- defaults: {
- dx: '0',
- dy: '0'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- fePointLight: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'x',
- 'y',
- 'z'
- ],
- defaults: {
- x: '0',
- y: '0',
- z: '0'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feSpecularLighting: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in',
- 'surfaceScale',
- 'specularConstant',
- 'specularExponent',
- 'kernelUnitLength'
- ],
- defaults: {
- surfaceScale: '1',
- specularConstant: '1',
- specularExponent: '1'
- },
- contentGroups: [
- 'descriptive',
- // TODO: exactly one 'light source element'
- 'lightSource'
- ]
- },
- feSpotLight: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'x',
- 'y',
- 'z',
- 'pointsAtX',
- 'pointsAtY',
- 'pointsAtZ',
- 'specularExponent',
- 'limitingConeAngle'
- ],
- defaults: {
- x: '0',
- y: '0',
- z: '0',
- pointsAtX: '0',
- pointsAtY: '0',
- pointsAtZ: '0',
- specularExponent: '1'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- feTile: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'in'
- ],
- content: [
- 'animate',
- 'set'
- ]
- },
- feTurbulence: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'filterPrimitive'
- ],
- attrs: [
- 'class',
- 'style',
- 'baseFrequency',
- 'numOctaves',
- 'seed',
- 'stitchTiles',
- 'type'
- ],
- defaults: {
- baseFrequency: '0',
- numOctaves: '1',
- seed: '0',
- stitchTiles: 'noStitch',
- type: 'turbulence'
- },
- content: [
- 'animate',
- 'set'
- ]
- },
- filter: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'x',
- 'y',
- 'width',
- 'height',
- 'filterRes',
- 'filterUnits',
- 'primitiveUnits',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- primitiveUnits: 'userSpaceOnUse',
- x: '-10%',
- y: '-10%',
- width: '120%',
- height: '120%'
- },
- contentGroups: [
- 'descriptive',
- 'filterPrimitive'
- ],
- content: [
- 'animate',
- 'set'
- ]
- },
- font: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'horiz-origin-x',
- 'horiz-origin-y',
- 'horiz-adv-x',
- 'vert-origin-x',
- 'vert-origin-y',
- 'vert-adv-y'
- ],
- defaults: {
- 'horiz-origin-x': '0',
- 'horiz-origin-y': '0'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'font-face',
- 'glyph',
- 'hkern',
- 'missing-glyph',
- 'vkern'
- ]
- },
- 'font-face': {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'font-family',
- 'font-style',
- 'font-variant',
- 'font-weight',
- 'font-stretch',
- 'font-size',
- 'unicode-range',
- 'units-per-em',
- 'panose-1',
- 'stemv',
- 'stemh',
- 'slope',
- 'cap-height',
- 'x-height',
- 'accent-height',
- 'ascent',
- 'descent',
- 'widths',
- 'bbox',
- 'ideographic',
- 'alphabetic',
- 'mathematical',
- 'hanging',
- 'v-ideographic',
- 'v-alphabetic',
- 'v-mathematical',
- 'v-hanging',
- 'underline-position',
- 'underline-thickness',
- 'strikethrough-position',
- 'strikethrough-thickness',
- 'overline-position',
- 'overline-thickness'
- ],
- defaults: {
- 'font-style': 'all',
- 'font-variant': 'normal',
- 'font-weight': 'all',
- 'font-stretch': 'normal',
- 'unicode-range': 'U+0-10FFFF',
- 'units-per-em': '1000',
- 'panose-1': '0 0 0 0 0 0 0 0 0 0',
- 'slope': '0'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- // TODO: "at most one 'font-face-src' element"
- 'font-face-src'
- ]
- },
- // TODO: empty content
- 'font-face-format': {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'string'
- ]
- },
- 'font-face-name': {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'name'
- ]
- },
- 'font-face-src': {
- attrsGroups: [
- 'core'
- ],
- content: [
- 'font-face-name',
- 'font-face-uri'
- ]
- },
- 'font-face-uri': {
- attrsGroups: [
- 'core',
- 'xlink'
- ],
- attrs: [
- 'href',
- 'xlink:href'
- ],
- content: [
- 'font-face-format'
- ]
- },
- foreignObject: {
- attrsGroups: [
- 'core',
- 'conditionalProcessing',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'x',
- 'y',
- 'width',
- 'height'
- ],
- defaults: {
- x: 0,
- y: 0
- }
- },
- g: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform'
- ],
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- glyph: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'd',
- 'horiz-adv-x',
- 'vert-origin-x',
- 'vert-origin-y',
- 'vert-adv-y',
- 'unicode',
- 'glyph-name',
- 'orientation',
- 'arabic-form',
- 'lang'
- ],
- defaults: {
- 'arabic-form': 'initial'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ],
- },
- glyphRef: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'd',
- 'horiz-adv-x',
- 'vert-origin-x',
- 'vert-origin-y',
- 'vert-adv-y'
- ],
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- hatch: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'x',
- 'y',
- 'pitch',
- 'rotate',
- 'hatchUnits',
- 'hatchContentUnits',
- 'transform'
- ],
- defaults: {
- hatchUnits: 'objectBoundingBox',
- hatchContentUnits: 'userSpaceOnUse',
- x: '0',
- y: '0',
- pitch: '0',
- rotate: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ],
- content: [
- 'hatchPath'
- ]
- },
- hatchPath: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'd',
- 'offset'
- ],
- defaults: {
- offset: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- hkern: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'u1',
- 'g1',
- 'u2',
- 'g2',
- 'k'
- ]
- },
- image: {
- attrsGroups: [
- 'core',
- 'conditionalProcessing',
- 'graphicalEvent',
- 'xlink',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'preserveAspectRatio',
- 'transform',
- 'x',
- 'y',
- 'width',
- 'height',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- x: '0',
- y: '0',
- preserveAspectRatio: 'xMidYMid meet'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- line: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'x1',
- 'y1',
- 'x2',
- 'y2'
- ],
- defaults: {
- x1: '0',
- y1: '0',
- x2: '0',
- y2: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- linearGradient: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'x1',
- 'y1',
- 'x2',
- 'y2',
- 'gradientUnits',
- 'gradientTransform',
- 'spreadMethod',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- x1: '0',
- y1: '0',
- x2: '100%',
- y2: '0',
- spreadMethod: 'pad'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'animate',
- 'animateTransform',
- 'set',
- 'stop'
- ]
- },
- marker: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'viewBox',
- 'preserveAspectRatio',
- 'refX',
- 'refY',
- 'markerUnits',
- 'markerWidth',
- 'markerHeight',
- 'orient'
- ],
- defaults: {
- markerUnits: 'strokeWidth',
- refX: '0',
- refY: '0',
- markerWidth: '3',
- markerHeight: '3'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- mask: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'x',
- 'y',
- 'width',
- 'height',
- 'maskUnits',
- 'maskContentUnits'
- ],
- defaults: {
- maskUnits: 'objectBoundingBox',
- maskContentUnits: 'userSpaceOnUse',
- x: '-10%',
- y: '-10%',
- width: '120%',
- height: '120%'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- metadata: {
- attrsGroups: [
- 'core'
- ]
- },
- 'missing-glyph': {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'd',
- 'horiz-adv-x',
- 'vert-origin-x',
- 'vert-origin-y',
- 'vert-adv-y'
- ],
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- mpath: {
- attrsGroups: [
- 'core',
- 'xlink'
- ],
- attrs: [
- 'externalResourcesRequired',
- 'href',
- 'xlink:href'
- ],
- contentGroups: [
- 'descriptive'
- ]
- },
- path: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'd',
- 'pathLength'
- ],
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- pattern: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'viewBox',
- 'preserveAspectRatio',
- 'x',
- 'y',
- 'width',
- 'height',
- 'patternUnits',
- 'patternContentUnits',
- 'patternTransform',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- patternUnits: 'objectBoundingBox',
- patternContentUnits: 'userSpaceOnUse',
- x: '0',
- y: '0',
- width: '0',
- height: '0',
- preserveAspectRatio: 'xMidYMid meet'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'paintServer',
- 'shape',
- 'structural'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- polygon: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'points'
- ],
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- polyline: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'points'
- ],
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- radialGradient: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'cx',
- 'cy',
- 'r',
- 'fx',
- 'fy',
- 'fr',
- 'gradientUnits',
- 'gradientTransform',
- 'spreadMethod',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- gradientUnits: 'objectBoundingBox',
- cx: '50%',
- cy: '50%',
- r: '50%'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'animate',
- 'animateTransform',
- 'set',
- 'stop'
- ]
- },
- meshGradient: {
- attrsGroups: [
- 'core',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'x',
- 'y',
- 'gradientUnits',
- 'transform'
- ],
- contentGroups: [
- 'descriptive',
- 'paintServer',
- 'animation',
- ],
- content: [
- 'meshRow'
- ]
- },
- meshRow: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style'
- ],
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'meshPatch'
- ]
- },
- meshPatch: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style'
- ],
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'stop'
- ]
- },
- rect: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'x',
- 'y',
- 'width',
- 'height',
- 'rx',
- 'ry'
- ],
- defaults: {
- x: '0',
- y: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- script: {
- attrsGroups: [
- 'core',
- 'xlink'
- ],
- attrs: [
- 'externalResourcesRequired',
- 'type',
- 'href',
- 'xlink:href'
- ]
- },
- set: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'animation',
- 'xlink',
- 'animationAttributeTarget',
- 'animationTiming',
- ],
- attrs: [
- 'externalResourcesRequired',
- 'to'
- ],
- contentGroups: [
- 'descriptive'
- ]
- },
- solidColor: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style'
- ],
- contentGroups: [
- 'paintServer'
- ]
- },
- stop: {
- attrsGroups: [
- 'core',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'offset',
- 'path'
- ],
- content: [
- 'animate',
- 'animateColor',
- 'set'
- ]
- },
- style: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'type',
- 'media',
- 'title'
- ],
- defaults: {
- type: 'text/css'
- }
- },
- svg: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'documentEvent',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'x',
- 'y',
- 'width',
- 'height',
- 'viewBox',
- 'preserveAspectRatio',
- 'zoomAndPan',
- 'version',
- 'baseProfile',
- 'contentScriptType',
- 'contentStyleType'
- ],
- defaults: {
- x: '0',
- y: '0',
- width: '100%',
- height: '100%',
- preserveAspectRatio: 'xMidYMid meet',
- zoomAndPan: 'magnify',
- version: '1.1',
- baseProfile: 'none',
- contentScriptType: 'application/ecmascript',
- contentStyleType: 'text/css'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- switch: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform'
- ],
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape'
- ],
- content: [
- 'a',
- 'foreignObject',
- 'g',
- 'image',
- 'svg',
- 'switch',
- 'text',
- 'use'
- ]
- },
- symbol: {
- attrsGroups: [
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'preserveAspectRatio',
- 'viewBox',
- 'refX',
- 'refY'
- ],
- defaults: {
- refX: 0,
- refY: 0
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'shape',
- 'structural',
- 'paintServer'
- ],
- content: [
- 'a',
- 'altGlyphDef',
- 'clipPath',
- 'color-profile',
- 'cursor',
- 'filter',
- 'font',
- 'font-face',
- 'foreignObject',
- 'image',
- 'marker',
- 'mask',
- 'pattern',
- 'script',
- 'style',
- 'switch',
- 'text',
- 'view'
- ]
- },
- text: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'lengthAdjust',
- 'x',
- 'y',
- 'dx',
- 'dy',
- 'rotate',
- 'textLength'
- ],
- defaults: {
- x: '0',
- y: '0',
- lengthAdjust: 'spacing'
- },
- contentGroups: [
- 'animation',
- 'descriptive',
- 'textContentChild'
- ],
- content: [
- 'a'
- ]
- },
- textPath: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'href',
- 'xlink:href',
- 'startOffset',
- 'method',
- 'spacing',
- 'd'
- ],
- defaults: {
- startOffset: '0',
- method: 'align',
- spacing: 'exact'
- },
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'a',
- 'altGlyph',
- 'animate',
- 'animateColor',
- 'set',
- 'tref',
- 'tspan'
- ]
- },
- title: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'class',
- 'style'
- ]
- },
- tref: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'href',
- 'xlink:href'
- ],
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'animate',
- 'animateColor',
- 'set'
- ]
- },
- tspan: {
- attrsGroups: [
- 'conditionalProcessing',
- 'core',
- 'graphicalEvent',
- 'presentation'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'x',
- 'y',
- 'dx',
- 'dy',
- 'rotate',
- 'textLength',
- 'lengthAdjust'
- ],
- contentGroups: [
- 'descriptive'
- ],
- content: [
- 'a',
- 'altGlyph',
- 'animate',
- 'animateColor',
- 'set',
- 'tref',
- 'tspan'
- ]
- },
- use: {
- attrsGroups: [
- 'core',
- 'conditionalProcessing',
- 'graphicalEvent',
- 'presentation',
- 'xlink'
- ],
- attrs: [
- 'class',
- 'style',
- 'externalResourcesRequired',
- 'transform',
- 'x',
- 'y',
- 'width',
- 'height',
- 'href',
- 'xlink:href'
- ],
- defaults: {
- x: '0',
- y: '0'
- },
- contentGroups: [
- 'animation',
- 'descriptive'
- ]
- },
- view: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'externalResourcesRequired',
- 'viewBox',
- 'preserveAspectRatio',
- 'zoomAndPan',
- 'viewTarget'
- ],
- contentGroups: [
- 'descriptive'
- ]
- },
- vkern: {
- attrsGroups: [
- 'core'
- ],
- attrs: [
- 'u1',
- 'g1',
- 'u2',
- 'g2',
- 'k'
- ]
- }
- };
- // http://wiki.inkscape.org/wiki/index.php/Inkscape-specific_XML_attributes
- exports.editorNamespaces = [
- 'http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd',
- 'http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd',
- 'http://www.inkscape.org/namespaces/inkscape',
- 'http://www.bohemiancoding.com/sketch/ns',
- 'http://ns.adobe.com/AdobeIllustrator/10.0/',
- 'http://ns.adobe.com/Graphs/1.0/',
- 'http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/',
- 'http://ns.adobe.com/Variables/1.0/',
- 'http://ns.adobe.com/SaveForWeb/1.0/',
- 'http://ns.adobe.com/Extensibility/1.0/',
- 'http://ns.adobe.com/Flows/1.0/',
- 'http://ns.adobe.com/ImageReplacement/1.0/',
- 'http://ns.adobe.com/GenericCustomNamespace/1.0/',
- 'http://ns.adobe.com/XPath/1.0/',
- 'http://schemas.microsoft.com/visio/2003/SVGExtensions/',
- 'http://taptrix.com/vectorillustrator/svg_extensions',
- 'http://www.figma.com/figma/ns',
- 'http://purl.org/dc/elements/1.1/',
- 'http://creativecommons.org/ns#',
- 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
- 'http://www.serif.com/',
- 'http://www.vector.evaxdesign.sk'
- ];
- // http://www.w3.org/TR/SVG11/linking.html#processingIRI
- exports.referencesProps = [
- 'clip-path',
- 'color-profile',
- 'fill',
- 'filter',
- 'marker-start',
- 'marker-mid',
- 'marker-end',
- 'mask',
- 'stroke',
- 'style'
- ];
- // http://www.w3.org/TR/SVG11/propidx.html
- exports.inheritableAttrs = [
- 'clip-rule',
- 'color',
- 'color-interpolation',
- 'color-interpolation-filters',
- 'color-profile',
- 'color-rendering',
- 'cursor',
- 'direction',
- 'dominant-baseline',
- 'fill',
- 'fill-opacity',
- 'fill-rule',
- 'font',
- 'font-family',
- 'font-size',
- 'font-size-adjust',
- 'font-stretch',
- 'font-style',
- 'font-variant',
- 'font-weight',
- 'glyph-orientation-horizontal',
- 'glyph-orientation-vertical',
- 'image-rendering',
- 'letter-spacing',
- 'marker',
- 'marker-end',
- 'marker-mid',
- 'marker-start',
- 'paint-order',
- 'pointer-events',
- 'shape-rendering',
- 'stroke',
- 'stroke-dasharray',
- 'stroke-dashoffset',
- 'stroke-linecap',
- 'stroke-linejoin',
- 'stroke-miterlimit',
- 'stroke-opacity',
- 'stroke-width',
- 'text-anchor',
- 'text-rendering',
- 'transform',
- 'visibility',
- 'word-spacing',
- 'writing-mode'
- ];
- exports.presentationNonInheritableGroupAttrs = [
- 'display',
- 'clip-path',
- 'filter',
- 'mask',
- 'opacity',
- 'text-decoration',
- 'transform',
- 'unicode-bidi',
- 'visibility'
- ];
- // http://www.w3.org/TR/SVG11/single-page.html#types-ColorKeywords
- exports.colorsNames = {
- 'aliceblue': '#f0f8ff',
- 'antiquewhite': '#faebd7',
- 'aqua': '#0ff',
- 'aquamarine': '#7fffd4',
- 'azure': '#f0ffff',
- 'beige': '#f5f5dc',
- 'bisque': '#ffe4c4',
- 'black': '#000',
- 'blanchedalmond': '#ffebcd',
- 'blue': '#00f',
- 'blueviolet': '#8a2be2',
- 'brown': '#a52a2a',
- 'burlywood': '#deb887',
- 'cadetblue': '#5f9ea0',
- 'chartreuse': '#7fff00',
- 'chocolate': '#d2691e',
- 'coral': '#ff7f50',
- 'cornflowerblue': '#6495ed',
- 'cornsilk': '#fff8dc',
- 'crimson': '#dc143c',
- 'cyan': '#0ff',
- 'darkblue': '#00008b',
- 'darkcyan': '#008b8b',
- 'darkgoldenrod': '#b8860b',
- 'darkgray': '#a9a9a9',
- 'darkgreen': '#006400',
- 'darkgrey': '#a9a9a9',
- 'darkkhaki': '#bdb76b',
- 'darkmagenta': '#8b008b',
- 'darkolivegreen': '#556b2f',
- 'darkorange': '#ff8c00',
- 'darkorchid': '#9932cc',
- 'darkred': '#8b0000',
- 'darksalmon': '#e9967a',
- 'darkseagreen': '#8fbc8f',
- 'darkslateblue': '#483d8b',
- 'darkslategray': '#2f4f4f',
- 'darkslategrey': '#2f4f4f',
- 'darkturquoise': '#00ced1',
- 'darkviolet': '#9400d3',
- 'deeppink': '#ff1493',
- 'deepskyblue': '#00bfff',
- 'dimgray': '#696969',
- 'dimgrey': '#696969',
- 'dodgerblue': '#1e90ff',
- 'firebrick': '#b22222',
- 'floralwhite': '#fffaf0',
- 'forestgreen': '#228b22',
- 'fuchsia': '#f0f',
- 'gainsboro': '#dcdcdc',
- 'ghostwhite': '#f8f8ff',
- 'gold': '#ffd700',
- 'goldenrod': '#daa520',
- 'gray': '#808080',
- 'green': '#008000',
- 'greenyellow': '#adff2f',
- 'grey': '#808080',
- 'honeydew': '#f0fff0',
- 'hotpink': '#ff69b4',
- 'indianred': '#cd5c5c',
- 'indigo': '#4b0082',
- 'ivory': '#fffff0',
- 'khaki': '#f0e68c',
- 'lavender': '#e6e6fa',
- 'lavenderblush': '#fff0f5',
- 'lawngreen': '#7cfc00',
- 'lemonchiffon': '#fffacd',
- 'lightblue': '#add8e6',
- 'lightcoral': '#f08080',
- 'lightcyan': '#e0ffff',
- 'lightgoldenrodyellow': '#fafad2',
- 'lightgray': '#d3d3d3',
- 'lightgreen': '#90ee90',
- 'lightgrey': '#d3d3d3',
- 'lightpink': '#ffb6c1',
- 'lightsalmon': '#ffa07a',
- 'lightseagreen': '#20b2aa',
- 'lightskyblue': '#87cefa',
- 'lightslategray': '#789',
- 'lightslategrey': '#789',
- 'lightsteelblue': '#b0c4de',
- 'lightyellow': '#ffffe0',
- 'lime': '#0f0',
- 'limegreen': '#32cd32',
- 'linen': '#faf0e6',
- 'magenta': '#f0f',
- 'maroon': '#800000',
- 'mediumaquamarine': '#66cdaa',
- 'mediumblue': '#0000cd',
- 'mediumorchid': '#ba55d3',
- 'mediumpurple': '#9370db',
- 'mediumseagreen': '#3cb371',
- 'mediumslateblue': '#7b68ee',
- 'mediumspringgreen': '#00fa9a',
- 'mediumturquoise': '#48d1cc',
- 'mediumvioletred': '#c71585',
- 'midnightblue': '#191970',
- 'mintcream': '#f5fffa',
- 'mistyrose': '#ffe4e1',
- 'moccasin': '#ffe4b5',
- 'navajowhite': '#ffdead',
- 'navy': '#000080',
- 'oldlace': '#fdf5e6',
- 'olive': '#808000',
- 'olivedrab': '#6b8e23',
- 'orange': '#ffa500',
- 'orangered': '#ff4500',
- 'orchid': '#da70d6',
- 'palegoldenrod': '#eee8aa',
- 'palegreen': '#98fb98',
- 'paleturquoise': '#afeeee',
- 'palevioletred': '#db7093',
- 'papayawhip': '#ffefd5',
- 'peachpuff': '#ffdab9',
- 'peru': '#cd853f',
- 'pink': '#ffc0cb',
- 'plum': '#dda0dd',
- 'powderblue': '#b0e0e6',
- 'purple': '#800080',
- 'rebeccapurple': '#639',
- 'red': '#f00',
- 'rosybrown': '#bc8f8f',
- 'royalblue': '#4169e1',
- 'saddlebrown': '#8b4513',
- 'salmon': '#fa8072',
- 'sandybrown': '#f4a460',
- 'seagreen': '#2e8b57',
- 'seashell': '#fff5ee',
- 'sienna': '#a0522d',
- 'silver': '#c0c0c0',
- 'skyblue': '#87ceeb',
- 'slateblue': '#6a5acd',
- 'slategray': '#708090',
- 'slategrey': '#708090',
- 'snow': '#fffafa',
- 'springgreen': '#00ff7f',
- 'steelblue': '#4682b4',
- 'tan': '#d2b48c',
- 'teal': '#008080',
- 'thistle': '#d8bfd8',
- 'tomato': '#ff6347',
- 'turquoise': '#40e0d0',
- 'violet': '#ee82ee',
- 'wheat': '#f5deb3',
- 'white': '#fff',
- 'whitesmoke': '#f5f5f5',
- 'yellow': '#ff0',
- 'yellowgreen': '#9acd32'
- };
- exports.colorsShortNames = {
- '#f0ffff': 'azure',
- '#f5f5dc': 'beige',
- '#ffe4c4': 'bisque',
- '#a52a2a': 'brown',
- '#ff7f50': 'coral',
- '#ffd700': 'gold',
- '#808080': 'gray',
- '#008000': 'green',
- '#4b0082': 'indigo',
- '#fffff0': 'ivory',
- '#f0e68c': 'khaki',
- '#faf0e6': 'linen',
- '#800000': 'maroon',
- '#000080': 'navy',
- '#808000': 'olive',
- '#ffa500': 'orange',
- '#da70d6': 'orchid',
- '#cd853f': 'peru',
- '#ffc0cb': 'pink',
- '#dda0dd': 'plum',
- '#800080': 'purple',
- '#f00': 'red',
- '#ff0000': 'red',
- '#fa8072': 'salmon',
- '#a0522d': 'sienna',
- '#c0c0c0': 'silver',
- '#fffafa': 'snow',
- '#d2b48c': 'tan',
- '#008080': 'teal',
- '#ff6347': 'tomato',
- '#ee82ee': 'violet',
- '#f5deb3': 'wheat'
- };
- // http://www.w3.org/TR/SVG11/single-page.html#types-DataTypeColor
- exports.colorsProps = [
- 'color', 'fill', 'stroke', 'stop-color', 'flood-color', 'lighting-color'
- ];
|