Angular rendering engine for Decaf applications
Interfaces
- AngularDynamicOutput
Defines the structure of the output produced by the NgxRenderingEngine when rendering a component. Contains the component type, inputs, injector, content nodes, and child components.
- ComponentMetadata
Defines the structure of metadata for Angular components, including change detection strategy, selector, standalone status, imports, template, and styles. This is used for reflection and dynamic component creation.
- FormServiceControl
Defines the structure for a form control managed by the form service. Contains the FormGroup control and the associated field properties for rendering.
- I18nResourceConfig
Defines the structure for configuring i18n resource file paths with prefix and suffix. Used by the translation system to locate and load language resource files.
- I18nToken
Defines the structure for i18n tokens, including resource configurations and versioned suffix flag.
- IBaseCustomEvent
Defines the base structure for custom events in the application. Contains properties for the event data, target element, name, and component.
- IComponentConfig
Defines the configuration for dynamically creating Angular components. Contains the component name, input properties, injector, and optional child components.
- IComponentHolder
Defines a component holder interface that provides access to the underlying DOM element through ElementRef
- IComponentProperties
Extends FieldProperties with additional properties specific to Angular components. Includes update mode for form controls and optional FormGroup and FormControl references.
- ICrudFormEvent
Extends IBaseCustomEvent to include optional handlers for CRUD form operations. This event type is used for form-related actions like create, read, update, and delete operations.
- ICrudFormOptions
Defines the configuration options for CRUD form buttons including submit and clear buttons. Each button can be customized with text, icon, and icon position.
- IFieldSetItem
Defines the structure for items displayed in the reorderable list within the fieldset. Each item represents a value added to the fieldset with display properties for the UI.
- IFieldSetValidationEvent
Defines the structure of validation events emitted when form validation occurs. Used for communication between form components and the fieldset container.
- IFilterQuery
Defines the complete structure for filter and sort operations. Combines multiple filter criteria with sorting configuration to provide comprehensive data filtering and ordering capabilities.
- IFilterQueryItem
Defines the structure of a single filter criterion in a filter query. Each item represents one condition to be applied to the data, consisting of an index (field name), a condition (comparison operator), and a value to compare against.
- IFormElement
Extends IComponentHolder to include a FormGroup for form handling capabilities
- IFormReactiveSubmitEvent
Defines the structure of data emitted when a reactive form is submitted. Contains the processed form data as key-value pairs.
- IListComponentRefreshEvent
Defines the structure of a refresh event for list components. Contains an array of key-value pairs representing the new data for the list.
- IListEmptyOptions
Defines the configuration for displaying an empty state in list components when no data is available. Includes text, button, icon, and link settings.
- IMenuItem
Represents a single item in a navigation or contextual menu. Includes the visible label and optional metadata such as accessibility title, target URL, icon, and color.
- IPaginationCustomEvent
Event emitted by pagination components to signal page navigation. Extends IBaseCustomEvent and carries a payload with the target page number and navigation direction.
- IRenderedModel
Defines the basic structure for models that can be rendered by the engine. Contains an optional rendererId that uniquely identifies the rendered instance.
- ISortObject
Defines the structure for specifying sort criteria including the field to sort by and the direction of the sort (ascending or descending).
- InputOption
Defines the common structure for options used in select, radio, and checkbox inputs. Contains properties for the display text, value, disabled state, CSS class, and icon.
- ListItemCustomEvent
Defines the structure of custom events triggered by list items. Extends IBaseCustomEvent with additional properties for the action and primary key.
Type Definitions
Object
# AngularFieldDefinition
A comprehensive type that combines properties from various Ionic components to define the structure of a field in an Angular form. It omits certain properties from IonInput, picks specific properties from IonSelect, IonTextarea, and IonCheckbox, and adds custom properties like type and className.
Field definition for Angular components
Properties:
| Name | Type | Attributes | Description |
|---|---|---|---|
type |
PossibleInputTypes
|
The type of input field |
|
className |
string
|
Array.<string>
|
CSS class name(s) for the field |
|
cancelText |
string
|
<optional> |
Text for the cancel button (from IonSelect) |
interface |
string
|
<optional> |
Interface style for select (from IonSelect) |
selectedText |
string
|
<optional> |
Text for selected option (from IonSelect) |
interfaceOptions |
Object
|
<optional> |
Options for the interface (from IonSelect) |
rows |
number
|
<optional> |
Number of rows for textarea (from IonTextarea) |
cols |
number
|
<optional> |
Number of columns for textarea (from IonTextarea) |
alignment |
string
|
<optional> |
Alignment of checkbox (from IonCheckbox) |
justify |
string
|
<optional> |
Justification of checkbox (from IonCheckbox) |
checked |
boolean
|
<optional> |
Whether checkbox is checked (from IonCheckbox) |
type |
PossibleInputTypes
|
||
className |
string
|
Array
|
SelectOption
|
RadioOption
# CrudFieldOption
Represents a union type that can be either a SelectOption or RadioOption. This is used for defining options in form fields that support both select and radio input types.
Option type for CRUD field inputs
'change'
|
'blur'
|
'submit'
# FieldUpdateMode
Defines when form field values should be updated in the model.
- 'change': Update on every change event
- 'blur': Update when the field loses focus
- 'submit': Update only when the form is submitted
Update mode options for form fields
ElementPosition
|
'stretch'
|
'middle'
|
'around'
|
'between'
# FlexPosition
Extends the basic ElementPosition with additional flex-specific position values. These positions are used for controlling alignment and distribution in flex containers.
Extended position options for flex layouts
'_blank'
|
'_self'
|
'_parent'
|
'_top'
|
string
# HTMLFormTarget
Defines the possible target values for HTML forms, including standard targets like '_blank', '_self', '_parent', and '_top', as well as custom string values.
Target options for HTML forms
TextFieldTypes
|
HTML5InputType
# PossibleInputTypes
Defines the possible input types that can be used in form fields. Includes standard HTML input types like checkbox, radio, and select, as well as Ionic's TextFieldTypes and textarea.
Possible input types for form fields
object
# RadioOption
Extends the InputOption interface with a checked property to indicate whether the option is checked by default.
Option type for radio inputs
Properties:
| Name | Type | Attributes | Description |
|---|---|---|---|
checked |
boolean
|
<optional> |
object
# SelectOption
Extends the InputOption interface with a selected property to indicate whether the option is selected by default.
Option type for select inputs
Properties:
| Name | Type | Attributes | Description |
|---|---|---|---|
selected |
boolean
|
<optional> |
'true'
|
'false'
|
boolean
# StringOrBoolean
Represents a value that can be either a boolean or a string representation of a boolean. This is useful for handling attribute values that can be specified as either strings or booleans.
String or boolean representation of a boolean value