- Suppress array field add/remove controls in view purpose: a view-purpose
al-field-arrayrendered the add-entry button and per-entry remove buttons, so display-only array columns leaked editing controls. Both templates (and theintroduced()handlers) are now gated onpurpose != 'view' - Fix an infinite loop in
al-field-schema'sparent_schema_fieldgetter: an unrelatedal-fieldancestor (neither schema-typed nor holding a Schema config) made the DOM walk spin forever on the same element, freezing the tab - Remove a leftover
console.logfrom the field dependency-change listener - Detach the dependency-change listener (on the form) and the schema-supplier listener when a field leaves the DOM: removed array/schema entries stayed referenced by their form forever
- Enforce
min-entry-count/max-entry-counton array fields: the add-entry button now refuses (and hides) past the maximum and remove buttons refuse (and hide) at the minimum - the attributes existed but were never enforced - Fix
al-field-array#setValuethrowing an error that talked about a "translatable field" - Make
al-pagerrespect thevisible-pagesattribute when clamping near page 1 (the window size was hardcoded to 5) - Fix the just-added-rows safeguard in
al-virtual-scroll's culling: it compared DOM elements against a list of string keys, so it never matched and freshly added rows could be culled in the same pass
- Release as v0.3.0
- Fix model and form resolution during client-side re-render when element is not yet in DOM
- Add fallback to default wrappers when field_type cannot be determined
- Implement
handleScrollEvent()inal-virtual-scrollelement - throttled culling of invisible elements during scroll - Implement keyboard navigation for selected values in
al-select- arrow keys now move between selected items when focus is on the component - Fix potential deadlock in
al-fieldwhen setting value during render - skip rerender if already rendering
- Add
al-datetime-inputto properly handle Date values with timezones
- Always make
al-field'sgetFieldType()method return a string - Add the
mixedfield view - Just clear the al-table when an falsy fieldset is assigned
- Explicitly pass on the
selfvalue in alchemy_select_item - Add more info to enum badges
- Improve array-field buttons
- Add
original_value_containerproperty to<al-field>elements, for when they're not inside a<al-form>element but still need the original container - Use
getParentFieldElement()instead ofalchemy_formwhen resolving inherited attributes - Also let the
modeattribute inherit - Add template for
viewmode forschemafields - Move the badge element to
styleboost - Make
al-tablecontents responsive/scrollable by default - Fix
<al-field-schema>#getSchemaSupplierField()not finding the supplier field when it's a nested schema - Don't let
<al-field-schema>#sub_fieldsreturn meta fields - Fix
<al-field-schema>having issues with nested<al-field-schema>fields - Make
<al-field>remember forcedschemavalues - Prefer
fallbacktemplate overstringtemplate when no specific template is found for a field - Make
<al-field>prefer the nearest descendant when getting thevalue_elementproperty - Support the
<al-field>configproperty being aSchemainstance (for now) - Add API action to get enum info
- Make
<al-field-schema>original_valuegetter aware of it being in an array
- Added
.alchemy-badgeclass - Use badges & microcopy for showing in-line empty values
- Also set the
al-field's model attribute insideal-tableelements - Depend on the
alchemy-styleboostpeer dependency - Let enum values use automatic styleboost colors in indexes + show correct titles
- Upgrade to Alchemy v1.4.0
- Add edit template for the
Objectfield type - Add settings editor element
- Make
readonlyattribute work onal-fieldandal-formelements - Use "alchemy-field-title" and "alchemy-field-description" microcopy in
al-fieldlabels - Add
zoneattribute for use in the microcopy system
- Fix
al-tablethrowing an error when receiving null data - Add
al-virtual-scrollelement - Make field
constraintswork by using theDocumentinstance instead of plain data object - Clear old errors when validating a form
- Add support for new local Date/Time fields & Decimal fields
- Add "hidden" field templates
- Fix
al-togglenot firing a change event - Fixed
al-fieldrendering to update content for non-value setter elements when a new value is assigned - Use
constraintsdata from sibling fields when loading associated field data - Automatically update computed field values when a field it depends on changes
- Add basic
al-apex-chartelement - Fix
al-tablealways turningDocumentListinstances into dumb arrays
- If a
al-fieldelement is assigned aFieldinstance to itsconfigproperty without a parentschemaproperty, it will be stored in itsassigned_dataproperty - Make sure string fields use the
textinput type instead ofstringin some cases - Automatically add the
does-not-expandcss class toal-toggleelement - Improve
al-togglestyling - Store a
al-fieldelement's applied options in the newapplied_optionsproperty, so it can be used inside the view templates too - Use relative (time-ago) dates by default for showing date/datetime fields inline
- Fix
al-field-schemaelement not being able to get schema of an arrayable field - Add
Pathwaysystem for faceted breadcrumbs - Allow
al-selectto take in simple arrays as data - Allow getting the current operator in a query builder entry
- Add more configuration to
al-code-input
- Don't look for a field when the path is not specified
- Make
al-field-schemaelements useField#getSubSchema()method - Add an icon to the translatable-field entry buttons to see if it has a translation or not
- Use
Scene#pushToHistory()instead of directly callingpushState - Select
display_field_selectfields when requesting related data - Make local-filtering in
al-selectelements case insensitive - Fix
al-selectnever getting more than the first page ingetRemoteFetchConfigmethod - Add
hasOneParentfield support - Make
FormApi#related()action make sure fields exist before querying them - Add a workaround so
al-selectactually refreshes elements when removing the search value
- Fix
al-button'sactivateevent not being cancelable - Add
placeholdersupport to the string field
- Enable
al-formmodel validation - Don't throw an error when a
al-fieldelement has no field name configured - Overwrite preloaded
al-selectvalues with their processed variant - Throw an error when a document does not have a
loadQueryBuilderDatamethod while using theFormApi#queryBuilderDataaction QueryBuilderValueinstances will now always add a type to thevalue_explicitobject- Make
al-buttonelements submit forms automatically - Fix operator
al-selectelement staying empty in a query builder entry - Work around a race condition in the query builder
- Add
behaviourattribute toal-buttonelement
- Use the
al-prefix for all custom elements instead of nothing oralchemy- - Add tab-elements & widget
- Add abstract
WithDataproviderclass and makeal-tableandal-selectuse it - Allow
al-tableto reuse existing rows and prevent render flashes - Add
al-stateand the abstractStatefulclass for elements with states - Add
al-buttonelement - Allow adding a suffix option to certain fields
- Allow using
al-tablepager without a url - Move widgets to
alchemy-widgetsplugin, because that depends onalchemy-form
- Don't let users manually add form widgets
- Allow overriding alchemy-field title & description in extra widget settings
- Allow overriding an alchemy-field's used wrapper-view
- Add
AlchemyField#applyOptions(options)method - Allow an alchemy-field's field_title property to be set
- Allow turning off specific column filters in alchemy-table
- Add inline enum field view
- Fix alchemy-pager icons
- Use
Model#getDisplayTitle()to get the display title of records for alchemy-select-items - Make the QueryBuilder field's source data configurable
- Add
VariableDefinition.fromMany()method VariableDefinition.cast()now also acceptsFieldinstances- Add
QueryBuilder.applyToCriteria()method - Fix schema fields sometimes getting the wrong schema from an Enum value
- Upgrade to
alchemy-mediav0.6.3 - Add
purposeandmodeattributes to AlchemyForm-based elements for improved field-template getting - Add first few
edit_inlineandview_inlinefield templates
- Hide
code-inputcontents until it's fully loaded - Don't crash when failing to get a field definition in a table
- Allow supplying a custom
data-srctoalchemy-fieldelements - Add
viewtemplates for File & Datetime fields - Use the new
alchemy.getClientModel()method inalchemy-fieldelement - Add
alchemy-password-inputelement
- Move the
alchemy-selectpagination checker initializer to a static function - Prevent
alchemy-selectfrom keeping on loading remote data when last few results were empty - Fix pagination breaking re-opening of
alchemy-selectdropdown - Fix initial value of a
BelongsToalchemy-selectelement not loading - Fix
alchemy-selectdownward-arrow-icon being rendered over value content - Use
alchemy-code-inputfor HTML fields - Allow manually setting a value on
alchemy-fieldelements - Try to let
Fieldinstances decide the representation of values inalchemy-tableelements - Don't open the
alchemy-tablecontextmenu when clicking on anchors
- Fix
<alchemy-table>code typo - Fix QueryBuilderGroup value being set incorrectly
- Add
<alchemy-query-builder-value>element - Add
<alchemy-query-builder-variable>element - Add List variable definition, which can contain other variables
- Fix
FormApi#relatedaction searching through multiple fields in anandgroup - Use microcopy translations in buttons
- Add
Actionclass for user interaction - Add context-menu support to
alchemy-table - Add support for using custom templates for
alchemy-selectoptions - Add QueryBuilder
- Print
alchemy-select-itemcontents as text, not html - Only get a maximum of 50 related items
- Set the parent
alchemy-selectelement when creatingalchemy-select-itemelement
- Make fields work with the new
Alchemy.Map.BackedandAlchemy.Map.Enumclass - Add the
field_path_in_current_schemaproperty - Make sure
alchemy-fieldsknow whichalchemy-formthey belong to - Improve the
original_valuegetters - Set the
field-typeattribute ofalchemy-fieldelements - Fix
alchemy-fieldelements sometimes not getting their value elements
- Fix datetime fields never showing their value
alchemy-tableelements will now ignore old loadRemote responses- The
indexproperty of aalchemy-field-array-entryelement will now return the current, actual index - Fix
schemafields breaking when their schema depends on another field - Populate
alchemy-formwith violations from the widget context - Fix
alchemy-labelnot always focusing on input after clicking on it - Fix
alchemy-string-inputelement and addalchemy-number-input - Fix
alchemy-fieldnot setting theforattribute of its label
- Add readonly attribute to fields
- Clear text input on focus out + improve accessibility of alchemy-select
- Add widget settings to alchemy-field
- Enable setting the language mode of ace editor
alchemy-tablewill now use theFieldConfig#getDisplayValueIn(data)method- Fix alchemy-form not saving translatable array fields properly
- Make alchemy-select work as an enum field
- Set search field value upon rendering alchemy-table
- Make pager show record count instead of page numbers when the page size is known, fixes #3
- Add code-input element + fix alchemy-select not loading value when rendering on the server
- Initial test release