New Custom Component Checklist
- Page code of component will be 'cst-${componentName}'.
- Deep/Hard Copy the bindable properties as if we change something in component file it will also change actual variable.
Example:@bindable dataObjthis.dataObj = {\}Object.assign(this.dataObj,dataObj)
- Change the names of bindable properties which are getting used in view to 'mdl'+ ${bindable proprety name} because same name overrides.
Example: @bindable dataObjthis.mdlDataObj = dataObj
- Convert the CSS file to SAAS file.
- For theming and pageLabels, check if 'window.SharedFunctionsCls' is there then call those methods.
- Add all the color variables in root with their color values.
- Bindable properties names:
- For data:
- If obj take name as, 'item'
- If array take name as, 'items'
- For options take name as 'options'
- For data:
- position : typically has "top/ right/ bottom/ left/ center" values
- style: typically has HTML style properties (all css properties)
- Normal attributes override json schema
- Global level option to open/close help icon details
- All custom elements can be used by common attributes like 'schema, schema-prop, schema-value'
- Test children works in same style as child i.e. if we give array/icons with options or javascript
- Test for no, min and large data.
- Test for component responsiveness.
- Page code of component will be 'cst-${componentName}'.
- Use disabled property as external property so that change can be handled.
- Test colors & text contrast with different themes.
- Test design with different container sizes.
- Check logging, security, performance & flexibility
- multi template design
- no label or other hardcodes
- Help manual (context sensitive)