dom_builder 2.2.7 dom_builder: ^2.2.7 copied to clipboard
Generate and manipulate DOM elements (virtual or real), DSX (like JSX) and HTML declarations (Web and Native support).
2.2.7 #
-
Improve null-safe code.
-
DOMGenerator
:- Added
isChildOfElement
. buildElement
: callsetAttributes
beforeaddChildToElement
, to avoid DOM state update.
- Added
-
DOMGeneratorDartHTMLImpl
:- Optimize
addChildToElement
andremoveChildFromElement
.
- Optimize
-
sdk: '>=3.4.0 <4.0.0'
-
html: ^0.15.5
-
swiss_knife: ^3.2.3
-
collection: ^1.18.0
-
lints: ^4.0.0
-
test: ^1.25.14
-
dependency_validator: ^4.1.2
-
coverage: ^1.11.1
2.2.6 #
-
DOMElement
: addedvalidator
. -
Change
whereNotNull()
tononNulls
. -
swiss_knife: ^3.2.1
-
test: ^1.25.8
-
coverage: ^1.9.0
2.2.5 #
-
DOMHtmlBrowser
:- Optimize
parse
.
- Optimize
-
DOMNode
:- Added
parseString
andparseStringNodes
.
- Added
-
$html
: optimize usingDOMNode.parseStringNodes
.
2.2.4 #
-
$p
: added parametercontent
. -
Added
$emsp
. -
Optimized
$nbsp
. -
Optimized
_parseStringNodes
and_parseListNodes
.
2.2.3 #
-
Added
possiblyWithHTMLTag
andpossiblyWithHTMLEntity
. -
possiblyWithHTML
: also check for HTML entities. -
DOMGenerator.buildTemplate
: fix resolution of entries with an HTML entity but without an HTML tag. -
swiss_knife: ^3.2.0
-
test: ^1.25.5
-
coverage: ^1.8.0
2.2.2 #
- Added
DOMTreeMap.getElementDOMTreeMap
.
2.2.1 #
-
DOMHtmlBrowser
:- Fix
toDOMElement
forcheckbox
.
- Fix
-
New
CHECKBOXElement
. -
$checkbox
: added parameterchecked
. -
WithValue
:- Changed from interface to mixin.
- Added
valueAsBool
,valueAsInt
,valueAsDouble
,valueAsNum
.
-
dependency_validator: ^3.2.3
2.2.0 #
-
DOMEvent
:- Change field
target
fromDOMElement
toDOMNode
to allowExternalElementNode
as target or any otherDOMNode
implementation.
- Change field
-
Dart CI: update and optimize jobs.
-
sdk: '>=3.0.0 <4.0.0'
-
html: ^0.15.4
-
collection: ^1.18.0
-
lints: ^2.1.1
-
test: ^1.24.6
2.1.9 #
- Fix
onKeyDown
handling and building.
2.1.8 #
- Optimize:
DOMAttribute.from
:- Check
DOMTemplate.possiblyATemplate
before callDOMTemplate.parse
.
- Check
DOMTemplate
:possiblyATemplate
and_parse
: check for minimal template length.
DOMNode
:from
,parseNodes
and_parseNode
: optimizeIterable
nodes resolution._addListToContent
and__insertListToContent
: Avoid input list copy.
DOMElement
:- Field
tag
:- Changed to NOT null.
- Always lower-case.
- Field
- html: ^0.15.3
2.1.7 #
- Added
CSSFunction
(extendsCSSValues
):- New
CSSValues
:CSSMax
andCSSMin
. CSSCalc
now extendsCSSFunction
.
- New
- swiss_knife: ^3.1.5
2.1.6 #
- Fix
createTableCells
.
2.1.5 #
DOMAction
: implement==
andhashCode
.DOMGenerator
:resolveActionAttribute
: ensure thateventStream.listen
is singleton.
- swiss_knife: ^3.1.4
2.1.4 #
DOMHtmlBrowser
:toDOMElement
: resolveinput
value
as attribute.
DOMElement
constructor:- Optimize tag resolution.
2.1.3 #
DOMNode
:buildHTML
: added parameterbuildTemplates = false
.
TemplateNode
:buildHTML
:- respect
buildTemplates
parameter. - pass
domContext
tobuild
calls.
- respect
- html: ^0.15.2
- swiss_knife: ^3.1.3
- lints: ^2.0.1
- test: ^1.23.1
- coverage: ^1.6.3
2.1.2 #
$button
: Addedname
anddisabled
.$input
,$checkbox
,$radiobutton
,$select
,$option
: Addeddisabled
.INPUTElement
,TEXTAREAElement
,SELECTElement
,OPTIONElement
: Addeddisabled
.- collection: ^1.17.0
2.1.1 #
- Added element events for
onKeyPress
,onKeyDown
andonKeyUp
.
2.1.0 #
- Added helpers
$ul
,$ol
,$li
. - Better handling of content as
Iterable
(auto converted toList
, to avoid re-iteration). - Updated list of self-closing tags:
area
,base
,br
,embed
,hr
,img
,input
,link
,meta
,param
,source
,track
,wbr
.
- sdk: '>=2.15.0 <3.0.0'
- dependency_validator: ^3.2.2
- coverage: ^1.5.0
2.0.10 #
CSS
:- Added
putIfAbsent
andputAllIfAbsent
. - Ensure that number values when converted to
String
won't end in unnecessary.0
. CSSColorRGBA
: ensure that when alpha is1.0
it will generatergb
(notrgba
) with only 3 elements.
- Added
$table
:- Parameters
thsStyle
,trsStyle
andtdsStyle
won't override a CSS style already defined in the table elements.
- Parameters
- GitHub CI:
- Remove use of Dart container.
- Fix coverage command for dart 2.17+
- swiss_knife: ^3.1.1
- collection: ^1.16.0
- lints: ^2.0.0
2.0.9 #
- Dart
2.16
:- Organize imports.
- Fix new lints.
- sdk: '>=2.13.0 <3.0.0'
- Added helper
$radiobutton
. - Tag
video
:- Allow boolean attributes: 'autoplay', 'controls' and 'muted'.
2.0.8 #
dom_builder_html_browser.dart
: reuseDomParser
instance.
2.0.7 #
- Added
DOMHtml
, a portable HTML handler and parser.- When compiling to the browser uses
dart:html
.
- When compiling to the browser uses
- Fix
OPTIONElement.toOptions
: - Migrated from package
pedantic
tolints
. - Using Dart
coverage
. - lints: ^1.0.1
- coverage: ^1.0.3
2.0.6 #
- Allow built of
DOMTemplate
without resolveDSX
entries. DOMNodeRuntime
:- added
remap
parameter toreplaceBy
. - Improved documentation.
- added
- Improved test coverage.
- swiss_knife: ^3.0.8
- test: ^1.17.10
2.0.5 #
- Added
DOMTreeMap.queryElement
. - Fix resolution of attributes with templates in some scenarios.
- Added code coverage.
2.0.4 #
- Templates now can also generate a
DOMNode
and not only texts/String. DSX
:- Allow DOM elements.
- Allow observation of mapped
DSX
.
- Fix
hidden
parameter, to not be defined whennull
(default wasfalse
now isnull
).
2.0.3 #
- Implemented
DSX
support, similar toJSX
.- Templates also accepts
DSX
references, including functions/lambdas.
- Templates also accepts
2.0.2 #
- Null Safety adjustments.
- swiss_knife: ^3.0.6
2.0.1 #
- Null Safety adjustments.
- swiss_knife: ^3.0.5
2.0.0 #
- Dart 2.12.0:
- Sound null safety compatibility.
- Update CI dart commands.
- sdk: '>=2.12.0 <3.0.0'
- html: ^0.15.0
- swiss_knife: ^3.0.1
- pedantic: ^1.11.0
- test: ^1.16.5
1.0.26 #
- Improved
boolean
attributes: 'selected', 'multiple', 'inert'. - Help
$divCenteredContent
: addedstyle
andclass
. - New helper:
$checkbox
. - Ensure that all element classes and helpers
have the global attribute
hidden
. - swiss_knife: ^2.5.26
1.0.25 #
DOMElement
: added event handleronLoad
andonError
.DOMTemplate
: added support to{{intl:key}}
.- swiss_knife: ^2.5.25
1.0.24 #
- Added support to content as
Future
.- When a
Future
is completed, the result will be inserted in the generated DOM tree.
- When a
- Added
DOMAsync
for async nodes.- With support for
loading
content, that will be replaced by result of async content.
- With support for
- Added interfaces
AsDOMElement
andAsDOMNode
. - Added
$select
and$option
helpers.
1.0.23 #
- Table:
- Added support to table caption.
- Added
colspan
androwspan
to helpers. - Added
thsStyle
andtdsStyle
to$table
helper.
DOMTemplate
:- Added
tryParse
andpossiblyATemplate
. - Now
TextNode
with a template code is mapped toTemplateNode
. toString()
now re-builds the template text code.- Improved tests.
- Added
1.0.22 #
DOMTemplate
:- added
locale
call action. - Added multiple actions using
;
delimiter. - Added variable comparison.
- added
DOMElement
: addedonChange
events.- swiss_knife: ^2.5.18
1.0.21 #
DOMTemplate
:- Added support to
{{.}}
syntax. - Better resolution of variables.
- Added support to
1.0.20 #
DOMTemplate
: support to template syntax, using{{...}}
blocks.- Added
DOMAction
andDOMActionExecutor
, that can perform operations overDOMElement
based into a simple syntax. DOMNode
:- Added
selectWithAllClass
,selectWithAnyClass
,selectByTag
. - Added
containsAllClasses
andcontainsAnyClass
.
- Added
CSSColor
: addedinverse
getter.
1.0.19 #
- Added
CSSNumber
. - Added
CSSBackground
. CSS
:- Added support to parse comments.
- Added support to CSS
background
andopacity
.
CSSColorName
: support for nametransparent
.CSSBorder
: improve parsing.DOMNode
:- Added
onGenerate
event. - Added
containsNode
. - Added
root
getter.
- Added
- Added helper
$img
. - Added helper
$divCenteredContent
: A div that centers vertically and horizontally content. - Fix
DOMElement.buildHTML
for self-closing tags. - Improved
DOMElement.possibleAttributes
. DOMGenerator
: addedrevertElementAttributes
.DOMContext
: AddedresolveCSSURL
andcssURLResolver
.
1.0.18 #
- Added option to generate XHTML.
- Added
resolveSource
, to translate anysrc
orhref
attribute. - Added
DOMGeneratorDelegate
. - Fix
CSSLength
, to parse double. - swiss_knife: ^2.5.14
- pedantic: ^1.9.2
- test: ^1.15.4
- test_coverage: ^0.4.3
1.0.17 #
DOMNodeRuntime
: Can manipulate CSS/style.- Added
DOMContext
andViewport
forDOMGenerator
. CSS
: now is capable to convert viewport units to pixel units, based into [DOMContext] and [Viewport].- Better
CSSLength
,CSSBorder
,CSSColorRGB
,CSSColorHEX
andCSSURL
parsing. - swiss_knife: ^2.5.12
1.0.16 #
- Added
CSS.parseList
. - Added new base class
DOMAttributeValueCollection
. - Improved
DOMGenerator.revert
. - Fix typo.
1.0.15 #
DOMGenerator
: Newrevert
feature.DOMGenerator
:registerElementGenerator
now receives a classElementGenerator
, that implementsgenerate
andrevert
.DOMGenerator
: AddedgetElementTag
andgetElementAttributes
.- DOMAttribute fix: Avoid adicional space to HTML tags when
DOMAttribute.buildHTML()
generates an empty string (usually false boolean attributes).
1.0.14 #
- Many improvements into CSS support.
- Added
CSSURL
,CSSColorName
,CSSGeneric
,CSSCalc
. - Added abstract class DOMAttributeValue for:
DOMAttributeValueBoolean
,DOMAttributeValueString
,DOMAttributeValueList
,DOMAttributeValueSet
,DOMAttributeValueCSS
. DOMNode.buildDOM
now accepts aT parent
parameter.- swiss_knife: ^2.5.8
1.0.13 #
- More
CSS
support:CSSBorder
. - Preserve CSS entries order.
- dartfmt.
1.0.12 #
- Added initial
CSS
support.
1.0.11 #
DOMElement
: fixabsorbNode
.- Removed helper
$node
- dartfmt.
1.0.10 #
DOMElement
: addedisCompatibleForMerge
.DOMGenerator
: addedignoreAttributeEquivalence
.DOMTreeMap
: added:matchesMapping
.DOMTreeMap
: fixedduplicateByDOMNode
,mergeNearNodes
.DOMNodeRuntime
: fixedmergeNode
,isPreviousNode
,isNextNode
.- Fix
$br
foramount
=0
.
1.0.9 #
- dartfmt.
1.0.8 #
- Added
DOMTreeMap
: can be used to map aDOMNode
to a generated node. - Added
DOMNodeRuntime
andDOMNode.runtime
to manipulate and access the actual generated node from the virtual node. - Added
onClick
andDOMEvent
. - Added
DOMNode.copy
. - Added node operations:
moveUp
,moveUpNode
,moveDown
,moveDownNode
,duplicate
,duplicateNode
,clearNodes
,delete
,deleteNode
. - Added:
absorbNode
,merge
. - Added:
isInSameParent
,isPreviousNode
,isNextNode
,isConsecutiveNode
,isConsecutiveNode
. - Added:
isStringElement
,isWhiteSpace
. - refactor
DOMAttribute
: set values. - Added:
DOMElement.addClass
. buildHTML
: prioritize attributes: id, class and style. Also shows boolean attributes at end of tag.buildHTML
: Char \xa0 is replaced to
to rollback conversion.- External element function: now accepts non argument version.
- Optimize call to
asNodeSelector
. - Added tests.
- Added
test_coverage
. - swiss_knife: ^2.5.5
1.0.7 #
- Added helpers for
header
andfooter
. - dartfmt
1.0.6 #
- dartfmt.
1.0.5 #
- Added API Documentation.
- dartfmt.
- swiss_knife: ^2.5.2
1.0.4 #
- Fix README example and new examples.
- Fix 'dartdoc' issues.
1.0.3 #
- Better handling of selectors formats: .class, #id, tag
- Table support.
- Fix build HTML with ident.
- Element helpers: $input, $textarea, $button, $label, $p, $br, $hr, $table, $thead, $tfoot, $tbody, $tr, $td, $th, $$divInline.
1.0.2 #
- Added support for external elements.
1.0.1 #
- Add generic DOMGenerator and support for dart:html.
1.0.0 #
- Initial version, created by Stagehand