@wavemaker/app-ng-runtime 11.14.0-rc.6276 → 11.14.1-10.6348

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/components/base/bundles/index.umd.js +88 -17
  2. package/components/base/esm2022/pipes/custom-pipes.mjs +10 -10
  3. package/components/base/esm2022/utils/widget-utils.mjs +5 -3
  4. package/components/base/esm2022/widgets/common/base/base.component.mjs +67 -7
  5. package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +7 -3
  6. package/components/base/esm2022/widgets/framework/property-change-handler.mjs +7 -2
  7. package/components/base/fesm2022/index.mjs +89 -18
  8. package/components/base/fesm2022/index.mjs.map +1 -1
  9. package/components/base/pipes/custom-pipes.d.ts +5 -5
  10. package/components/basic/label/bundles/index.umd.js +9 -1
  11. package/components/basic/label/esm2022/label.directive.mjs +10 -2
  12. package/components/basic/label/fesm2022/index.mjs +9 -1
  13. package/components/basic/label/fesm2022/index.mjs.map +1 -1
  14. package/components/data/pagination/bundles/index.umd.js +4 -0
  15. package/components/data/pagination/esm2022/pagination.component.mjs +5 -1
  16. package/components/data/pagination/fesm2022/index.mjs +4 -0
  17. package/components/data/pagination/fesm2022/index.mjs.map +1 -1
  18. package/components/data/table/bundles/index.umd.js +371 -15
  19. package/components/data/table/esm2022/table-action/table-action.directive.mjs +8 -1
  20. package/components/data/table/esm2022/table-column/table-column.directive.mjs +107 -3
  21. package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +9 -1
  22. package/components/data/table/esm2022/table-cud.directive.mjs +8 -2
  23. package/components/data/table/esm2022/table-filter.directive.mjs +12 -2
  24. package/components/data/table/esm2022/table-row/table-row.directive.mjs +8 -1
  25. package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +8 -1
  26. package/components/data/table/esm2022/table.component.mjs +219 -12
  27. package/components/data/table/fesm2022/index.mjs +371 -15
  28. package/components/data/table/fesm2022/index.mjs.map +1 -1
  29. package/components/data/table/table-action/table-action.directive.d.ts +3 -2
  30. package/components/data/table/table-column/table-column.directive.d.ts +3 -2
  31. package/components/data/table/table-column-group/table-column-group.directive.d.ts +3 -2
  32. package/components/data/table/table-cud.directive.d.ts +3 -1
  33. package/components/data/table/table-filter.directive.d.ts +3 -1
  34. package/components/data/table/table-row/table-row.directive.d.ts +3 -2
  35. package/components/data/table/table-row-action/table-row-action.directive.d.ts +3 -2
  36. package/components/data/table/table.component.d.ts +6 -2
  37. package/components/dialogs/default/bundles/index.umd.js +21 -18
  38. package/components/dialogs/default/dialog-header/dialog-header.component.d.ts +4 -1
  39. package/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +13 -10
  40. package/components/dialogs/default/fesm2022/index.mjs +9 -6
  41. package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  42. package/components/navigation/menu/bundles/index.umd.js +5 -0
  43. package/components/navigation/menu/esm2022/menu.component.mjs +6 -1
  44. package/components/navigation/menu/fesm2022/index.mjs +5 -0
  45. package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  46. package/components/navigation/popover/bundles/index.umd.js +6 -6
  47. package/components/navigation/popover/esm2022/popover.component.mjs +4 -4
  48. package/components/navigation/popover/fesm2022/index.mjs +3 -3
  49. package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  50. package/components/navigation/popover/popover.component.d.ts +6 -0
  51. package/core/bundles/index.umd.js +411 -82
  52. package/core/esm2022/public_api.mjs +3 -3
  53. package/core/esm2022/types/types.mjs +1 -1
  54. package/core/esm2022/utils/utils.mjs +6 -2
  55. package/core/esm2022/utils/watcher.mjs +402 -81
  56. package/core/fesm2022/index.mjs +410 -84
  57. package/core/fesm2022/index.mjs.map +1 -1
  58. package/core/public_api.d.ts +2 -2
  59. package/core/types/types.d.ts +1 -0
  60. package/core/utils/utils.d.ts +1 -0
  61. package/core/utils/watcher.d.ts +28 -5
  62. package/npm-shrinkwrap.json +2 -2
  63. package/package-lock.json +2 -2
  64. package/package.json +1 -1
  65. package/runtime/base/bundles/index.umd.js +23 -2
  66. package/runtime/base/esm2022/components/app-component/app.component.mjs +4 -2
  67. package/runtime/base/esm2022/components/base-page.component.mjs +6 -2
  68. package/runtime/base/esm2022/components/base-partial.component.mjs +7 -2
  69. package/runtime/base/esm2022/components/base-prefab.component.mjs +7 -2
  70. package/runtime/base/esm2022/components/base-spa-page.component.mjs +6 -2
  71. package/runtime/base/esm2022/services/app.service.mjs +2 -1
  72. package/runtime/base/esm2022/services/pipe-provider.service.mjs +4 -4
  73. package/runtime/base/fesm2022/index.mjs +24 -3
  74. package/runtime/base/fesm2022/index.mjs.map +1 -1
  75. package/runtime/base/services/app.service.d.ts +1 -0
  76. package/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -1
  77. package/scripts/datatable/datatable.js +101 -15
  78. package/transpiler/bundles/index.umd.js +1 -1
  79. package/transpiler/esm2022/imports.mjs +2 -2
  80. package/transpiler/fesm2022/index.mjs +1 -1
  81. package/transpiler/fesm2022/index.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../projects/transpiler/src/imports.ts","../../../projects/transpiler/src/build.ts","../../../projects/transpiler/src/index.ts"],"sourcesContent":["import {ImportDef} from './build';\n\n// Angular Core Modules\nconst NG_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'FormsModule', as: 'ngFormsModule' }];\nconst NG_REACTIVE_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'ReactiveFormsModule', as: 'ngReactiveFormsModule' }];\n\n// NGX Bootstrap Modules\nconst NGX_BS_DATE_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/datepicker', name: 'BsDatepickerModule', as: 'ngx_BsDatepickerModule' }];\nconst NGX_CAROUSEL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/carousel', name: 'CarouselModule', as: 'ngxCarouselModule', forRoot: true }];\nconst NGX_COLOR_PICKER_DIRECTIVE: ImportDef[] = [{ from: 'ngx-color-picker', name: 'ColorPickerDirective', as: 'ngx_ColorPickerDirective' }];\nconst NGX_DROP_DOWN_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/dropdown', name: 'BsDropdownModule', as: 'ngxBsDropdownModule', forRoot: true }];\n//const NGX_MODAL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/modal', name: 'ModalModule', as: 'ngx_ModalModule' }];\nconst NGX_PAGINATION_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/pagination', name: 'PaginationModule', as: 'ngxPaginationModule', forRoot: true }];\nconst NGX_POPOVER_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/popover', name: 'PopoverModule', as: 'ngxPopoverModule', forRoot: true }];\nconst NGX_TIME_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/timepicker', name: 'TimepickerModule', as: 'ngx_TimepickerModule', forRoot: true }];\nconst NGX_TOOL_TIP_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/tooltip', name: 'TooltipModule', as: 'ngxTooltipModule', forRoot: true }];\nconst NGX_TYPE_HEAD_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/typeahead', name: 'TypeaheadModule', as: 'ngxTypeaheadModule', forRoot: true }];\n\n// Progess Modules\nconst PROGRESS_BAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-bar', name: 'ProgressBarComponent' }];\nconst PROGRESS_CIRCLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-circle', name: 'ProgressCircleComponent' }];\nconst PAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageDirective' }];\nconst PAGINATION_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_PAGINATION_MODULE, { from: '@wm/components/data/pagination', name: 'PaginationComponent' }];\n\n// Basic Components\nconst ANCHOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/anchor', name: 'AnchorComponent' }];\nconst AUDIO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/audio', name: 'AudioComponent' }];\nconst HTML_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/html', name: 'HtmlDirective' }];\nconst ICON_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/icon', name: 'IconComponent' }];\nconst IFRAME_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/iframe', name: 'IframeComponent' }];\nconst LABEL_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/label', name: 'LabelDirective' }];\nconst PICTURE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/picture', name: 'PictureDirective' }];\nconst SEARCH_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NGX_TYPE_HEAD_MODULE,\n { from: '@wm/components/basic/search', name: 'ScrollableDirective' },\n { from: '@wm/components/basic/search', name: 'SearchComponent' }];\nconst SPINNER_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/spinner', name: 'SpinnerComponent' }];\nconst VIDEO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/video', name: 'VideoComponent' }];\n\n// Container Components\nconst PARTIAL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialDirective' }];\nconst PARTIAL_CONTAINER: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamHandlerDirective' }, { from: '@wm/components/base', name: 'PartialContainerDirective' }]\nconst ACCORDION_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/accordion', name: 'AccordionPaneComponent' }];\nconst ACCORDION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/accordion', name: 'AccordionDirective' }];\nconst CONTAINER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/base', name: 'ContainerDirective' }]\nconst PARTIAL_PARAM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamDirective' }];\nconst LINEAR_LAYOUT_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/linear-layout', name: 'LinearLayoutItemDirective' }];\nconst LINEAR_LAYOUT_DIRECTIVE: ImportDef[] = [...LINEAR_LAYOUT_ITEM_DIRECTIVE, { from: '@wm/components/containers/linear-layout', name: 'LinearLayoutDirective' }];\nconst TAB_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/tabs', name: 'TabPaneComponent' }];\nconst TABS_COMPONENT: ImportDef[] = [...TAB_PANE_COMPONENT, { from: '@wm/components/containers/tabs', name: 'TabsComponent' }];\nconst WIZARD_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/wizard', name: 'WizardActionDirective' }];\nconst WIZARD_STEP_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/wizard', name: 'WizardStepComponent' }];\nconst WIZARD_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...WIZARD_ACTION_DIRECTIVE, ...WIZARD_STEP_DIRECTIVE, { from: '@wm/components/containers/wizard', name: 'WizardComponent' }];\nconst LAYOUT_GRID_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridColumnDirective' }];\nconst LAYOUT_GRID_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridRowDirective' }];\nconst LAYOUT_GRID_DIRECTIVE: ImportDef[] = [...LAYOUT_GRID_ROW_DIRECTIVE, ...LAYOUT_GRID_COLUMN_DIRECTIVE, { from: '@wm/components/containers/layout-grid', name: 'LayoutgridDirective' }];\nconst PANEL_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/panel', name: 'PanelComponent' }];\nconst TILE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/tile', name: 'TileDirective' }];\nconst REPEAT_TEMPLATE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'RepeatTemplateDirective' }];\n\n// Dialog Modules\nconst ALERT_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/alert-dialog', name: 'AlertDialogComponent' }];\nconst CONFIRM_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/confirm-dialog', name: 'ConfirmDialogComponent' }];\nconst DESIGN_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/design-dialog', name: 'DialogComponent' }];\nconst IFRAME_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/iframe-dialog', name: 'IframeDialogComponent' }];\nconst LOGIN_DIALOG_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs/login-dialog', name: 'LoginDialogDirective' }, ...DESIGN_DIALOG_COMPONENT];\nconst PARTIAL_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/partial-dialog', name: 'PartialDialogComponent' }, ...CONTAINER_DIRECTIVE];\nconst DIALOGACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs', name: 'DialogFooterDirective' }];\n\n// Navigation Modules\nconst NAV_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavItemDirective' }];\nconst NAV_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavComponent' }];\nconst NAVIGATION_CONTROL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavigationControlDirective' }];\nconst MENU_DROPDOWN_ITEM_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }];\nconst MENU_DROPDOWN_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }]; // Duplicate, consider removing one\nconst MENU_COMPONENT: ImportDef[] = [...NGX_DROP_DOWN_MODULE, ...MENU_DROPDOWN_COMPONENT, ...MENU_DROPDOWN_ITEM_COMPONENT, ...NAVIGATION_CONTROL_DIRECTIVE, ...NAV_COMPONENT, ...NAV_ITEM_DIRECTIVE, { from: '@wm/components/navigation/menu', name: 'MenuComponent' }];\nconst MESSAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/base', name: 'MessageComponent' }];\nconst BREAD_CRUMB_COMPONENT: ImportDef[] = [...MENU_COMPONENT, { from: '@wm/components/navigation/breadcrumb', name: 'BreadcrumbComponent' }];\nconst NAVBAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/navbar', name: 'NavbarComponent' }];\nconst POPOVER_COMPONENT: ImportDef[] = [...NGX_POPOVER_MODULE, { from: '@wm/components/navigation/popover', name: 'PopoverComponent' }, ...CONTAINER_DIRECTIVE];\nconst TOP_NAV_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/top-nav', name: 'TopNavDirective' }];\n\n// Input Components\nconst CALENDAR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, { from: '@wm/components/input/calendar', name: 'CalendarComponent' }];\nconst CHIPS_COMPONENT: ImportDef[] = [...SEARCH_COMPONENT, { from: '@wm/components/input/chips', name: 'ChipsComponent' }];\nconst COLOR_PICKER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_COLOR_PICKER_DIRECTIVE, { from: '@wm/components/input/color-picker', name: 'ColorPickerComponent' }];\nconst CURRENCY_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/currency', name: 'CurrencyComponent' }];\nconst DATE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date', name: 'DateComponent' }];\nconst DATE_TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date-time', name: 'DatetimeComponent' }];\nconst TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/time', name: 'TimeComponent' }];\nconst FILE_UPLOAD_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/file-upload', name: 'FileUploadComponent' }];\nconst RATING_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/rating', name: 'RatingComponent' }];\nconst SLIDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/slider', name: 'SliderComponent' }];\nconst BUTTON_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button', name: 'ButtonComponent' }];\nconst BUTTON_GROUP_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button-group', name: 'ButtonGroupDirective' }];\n// const CAPTION_POSITION_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CaptionPositionDirective' }];\nconst CHECKBOX_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkbox', name: 'CheckboxComponent' }];\nconst CHECKBOXSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkboxset', name: 'CheckboxsetComponent' }];\n// const COMPOSITE_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CompositeDirective' }];\nconst NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/number', name: 'NumberComponent' }];\nconst RADIOSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/radioset', name: 'RadiosetComponent' }];\nconst SELECT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/select', name: 'SelectComponent' }];\nconst SWITCH_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/switch', name: 'SwitchComponent' }];\nconst INPUT_CALENDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputCalendarComponent' }];\nconst INPUT_COLOR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputColorComponent' }];\nconst INPUT_EMAIL_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputEmailComponent' }];\nconst INPUT_NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputNumberComponent' }];\nconst INPUT_TEXT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputTextComponent' }];\nconst TEXTAREA_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/textarea', name: 'TextareaComponent' }];\n\n// Data Components\nconst CARD_ACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardActionsDirective' }];\nconst CARD_CONTENT_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/data/card', name: 'CardContentComponent' }];\nconst CARD_FOOTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardFooterDirective' }];\nconst CARD_COMPONENT: ImportDef[] = [\n ...NGX_DROP_DOWN_MODULE,\n ...MENU_COMPONENT,\n ...CARD_ACTIONS_DIRECTIVE,\n ...CARD_CONTENT_COMPONENT,\n ...CARD_FOOTER_DIRECTIVE,\n { from: '@wm/components/data/card', name: 'CardComponent' }];\nconst LIST_ITEM_DIRECTIVE: ImportDef[] = [...PAGINATION_COMPONENT, { from: '@wm/components/data/list', name: 'ListItemDirective' }];\nconst LIST_COMPONENT: ImportDef[] = [...PAGINATION_COMPONENT, ...LIST_ITEM_DIRECTIVE, { from: '@wm/components/data/list', name: 'ListComponent' }];\nconst TABLE_CUD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableCUDDirective' }];\nconst TABLE_FILTER_SORT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableFilterSortDirective' }];\nconst TABLE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableActionDirective' }];\nconst TABLE_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnDirective' }];\nconst TABLE_COLUMN_GROUP_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnGroupDirective' }];\nconst TABLE_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowDirective' }, ...CONTAINER_DIRECTIVE, ...PARTIAL_CONTAINER];\nconst TABLE_ROW_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowActionDirective' }, ...BUTTON_COMPONENT];\nconst TABLE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...PAGINATION_COMPONENT,\n ...MENU_COMPONENT,\n ...NGX_TOOL_TIP_MODULE,\n ...LIST_COMPONENT,\n ...TABLE_ACTION_DIRECTIVE,\n ...TABLE_CUD_DIRECTIVE,\n ...TABLE_FILTER_SORT_DIRECTIVE,\n ...TABLE_COLUMN_DIRECTIVE,\n ...TABLE_COLUMN_GROUP_DIRECTIVE,\n ...TABLE_ROW_DIRECTIVE,\n ...TABLE_ROW_ACTION_DIRECTIVE,\n { from: '@wm/components/data/table', name: 'TableComponent' }];\nconst LIVE_TABLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/data/live-table', name: 'LiveTableComponent' }];\n\n// Form Components and Directives\nconst FORM_WIDGET_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormWidgetDirective' }];\nconst FORM_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormActionDirective' }];\nconst FORM_FIELD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormFieldDirective' }];\nconst LIVE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveActionsDirective' }];\nconst DEPENDS_ON_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'DependsonDirective' }];\nconst LIVE_FILTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFilterDirective' }];\nconst LIVE_FORM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFormDirective' }];\nconst FORM_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...FORM_ACTION_DIRECTIVE,\n ...FORM_WIDGET_DIRECTIVE,\n ...FORM_FIELD_DIRECTIVE,\n ...LIVE_ACTION_DIRECTIVE,\n ...DEPENDS_ON_DIRECTIVE,\n ...LIVE_FILTER_DIRECTIVE,\n ...LIVE_FORM_DIRECTIVE,\n { from: '@wm/components/data/form', name: 'FormComponent' }];\nconst COMPOSITE_DIRECTIVE = [{ from: '@wm/components/input/composite', name: 'CompositeDirective' }, { from: '@wm/components/input/caption-position', name: 'CaptionPositionDirective' }]\n\n// Page Structure Components // TODO: PARTIAL_CONTAINER these needed ? appComponent has imports at root\nconst FOOTER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/footer', name: 'FooterDirective' }];\nconst HEADER_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/header', name: 'HeaderComponent' }];\nconst LEFT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/left-panel', name: 'LeftPanelDirective' }];\nconst RIGHT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/right-panel', name: 'RightPanelDirective' }];\nconst PAGE_CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageContentComponent' }];\nconst SPA_PAGE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'SpaPageDirective' }];\nconst LAYOUT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'LayoutDirective' }];\nconst CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'ContentComponent' }];\n\n// Advanced Components\nconst CAROUSEL_TEMPLATE_DIRECTIVE: ImportDef[] = [...NGX_CAROUSEL_MODULE, { from: '@wm/components/advanced/carousel', name: 'CarouselTemplateDirective' }];\nconst CAROUSEL_COMPONENT: ImportDef[] = [...NGX_CAROUSEL_MODULE, ...CAROUSEL_TEMPLATE_DIRECTIVE, { from: '@wm/components/advanced/carousel', name: 'CarouselDirective' }];\nconst CHART_COMPONENT: ImportDef[] = [{ from: '@wm/components/chart', name: 'ChartComponent' }, {from: '@wm/components/base', name: 'RedrawableDirective'}];\nconst CUSTOM_WIDGET_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/custom', name: 'CustomWidgetContainerDirective' }];\nconst CUSTOM_WIDGET_DIRECTIVE: ImportDef[] = [...CUSTOM_WIDGET_CONTAINER_DIRECTIVE, { from: '@wm/components/advanced/custom', name: 'CustomWidgetDirective' }];\nconst LOGIN_COMPONENT: ImportDef[] = [{ from: '@wm/components/advanced/login', name: 'LoginComponent' }];\nconst MARQUEE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/marquee', name: 'MarqueeDirective' }];\nconst PREFAB_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabContainerDirective' }];\nconst PREFAB_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabDirective' }];\nconst RICH_TEXT_EDITOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/rich-text-editor', name: 'RichTextEditorComponent' }];\nconst TREE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/tree', name: 'TreeComponent' }];\nconst ACCESSROLES_DIRECTIVE = [{from: '@wm/runtime/base', name: 'AccessrolesDirective'}];\nconst SHOW_IN_DEVICE_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'ShowInDeviceDirective'}];\nconst LAZY_LOAD_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'LazyLoadDirective'}];\n// Pipes\nconst TO_DATE_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToDatePipe' }];\nconst TO_CURRENCY_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToCurrencyPipe' }];\nconst NUMBER_TO_STRING_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'NumberToStringPipe' }];\nconst STRING_TO_NUMBER_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'StringToNumberPipe' }];\nconst TIME_FROM_NOW_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'TimeFromNowPipe' }];\nconst PREFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'PrefixPipe' }];\nconst SUFFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'SuffixPipe' }];\nconst CUSTOM_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'CustomPipe' }];\n\nexport const WIDGET_IMPORTS: Map<string, ImportDef[]> = new Map([\n ['wm-accordion', ACCORDION_DIRECTIVE],\n ['wm-accordionpane', ACCORDION_PANE_COMPONENT],\n ['wm-anchor', ANCHOR_COMPONENT],\n ['wm-alertdialog', ALERT_DIALOG_COMPONENT],\n ['wm-audio', AUDIO_COMPONENT],\n ['wm-button', BUTTON_COMPONENT],\n ['wm-buttongroup', BUTTON_GROUP_DIRECTIVE],\n ['wm-breadcrumb', BREAD_CRUMB_COMPONENT],\n ['wm-calendar', CALENDAR_COMPONENT],\n ['wm-card', CARD_COMPONENT],\n ['wm-card-actions', CARD_ACTIONS_DIRECTIVE],\n ['wm-card-content', CARD_CONTENT_COMPONENT],\n ['wm-card-footer', CARD_FOOTER_DIRECTIVE],\n ['wm-carousel', CAROUSEL_COMPONENT],\n ['wm-carousel-content', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-carousel-template', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-chart', CHART_COMPONENT],\n ['wm-checkbox', CHECKBOX_COMPONENT],\n ['wm-checkboxset', CHECKBOXSET_COMPONENT],\n ['wm-chips', CHIPS_COMPONENT],\n ['wm-colorpicker', COLOR_PICKER_COMPONENT],\n ['wm-confirmdialog', CONFIRM_DIALOG_COMPONENT],\n ['wm-container', CONTAINER_DIRECTIVE],\n ['wm-param', PARTIAL_PARAM_DIRECTIVE],\n ['wm-content', CONTENT_COMPONENT],\n ['wm-currency', CURRENCY_COMPONENT],\n ['wm-date', DATE_COMPONENT],\n ['wm-datetime', DATE_TIME_COMPONENT],\n ['wm-dialog', DESIGN_DIALOG_COMPONENT],\n ['wm-dialogactions', DIALOGACTIONS_DIRECTIVE],\n ['wm-footer', FOOTER_DIRECTIVE],\n ['wm-form', FORM_COMPONENT],\n ['wm-form-action', FORM_ACTION_DIRECTIVE],\n ['wm-form-field', FORM_FIELD_DIRECTIVE],\n ['wm-filter-field', LIVE_FILTER_DIRECTIVE],\n ['wm-fileupload', FILE_UPLOAD_COMPONENT],\n ['wm-gridrow', LAYOUT_GRID_ROW_DIRECTIVE],\n ['wm-gridcolumn', LAYOUT_GRID_COLUMN_DIRECTIVE],\n ['wm-header', HEADER_COMPONENT],\n ['wm-html', HTML_COMPONENT],\n ['wm-icon', ICON_COMPONENT],\n ['wm-iframe', IFRAME_COMPONENT],\n ['wm-iframedialog', IFRAME_DIALOG_COMPONENT],\n ['wm-label', LABEL_COMPONENT],\n ['wm-layout', LAYOUT_DIRECTIVE],\n ['wm-layoutgrid', LAYOUT_GRID_DIRECTIVE],\n ['wm-left-panel', LEFT_PANEL_DIRECTIVE],\n ['wm-linearlayout', LINEAR_LAYOUT_DIRECTIVE],\n ['wm-linearlayoutitem', LINEAR_LAYOUT_ITEM_DIRECTIVE],\n ['wm-list', LIST_COMPONENT],\n ['wm-livetable', LIVE_TABLE_COMPONENT],\n ['wm-login', LOGIN_COMPONENT],\n ['wm-custom', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-custom-widget', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-logindialog', LOGIN_DIALOG_DIRECTIVE],\n ['wm-marquee', MARQUEE_DIRECTIVE],\n ['wm-menu', MENU_COMPONENT],\n ['wm-message', MESSAGE_COMPONENT],\n ['wm-nav', NAV_COMPONENT],\n ['wm-navbar', NAVBAR_COMPONENT],\n ['wm-nav-item', NAV_ITEM_DIRECTIVE],\n ['wm-number', NUMBER_COMPONENT],\n ['wm-partial', PARTIAL_DIRECTIVE],\n ['wm-page', PAGE_COMPONENT],\n ['wm-page-content', PAGE_CONTENT_COMPONENT],\n ['spa-page-content', SPA_PAGE_DIRECTIVE],\n ['wm-pagedialog', PARTIAL_DIALOG_COMPONENT],\n ['wm-pagination', PAGINATION_COMPONENT],\n ['wm-panel', PANEL_COMPONENT],\n ['wm-panel-footer', PANEL_COMPONENT],\n ['wm-picture', PICTURE_COMPONENT],\n ['wm-popover', POPOVER_COMPONENT],\n ['wm-progress-bar', PROGRESS_BAR_COMPONENT],\n ['wm-prefab', PREFAB_DIRECTIVE],\n ['wm-prefab-container', PREFAB_CONTAINER_DIRECTIVE],\n ['wm-progress-circle', PROGRESS_CIRCLE_COMPONENT],\n ['wm-radioset', RADIOSET_COMPONENT],\n ['wm-rating', RATING_COMPONENT],\n ['wm-richtexteditor', RICH_TEXT_EDITOR_COMPONENT],\n ['wm-right-panel', RIGHT_PANEL_DIRECTIVE],\n ['wm-select', SELECT_COMPONENT],\n ['wm-search', SEARCH_COMPONENT],\n ['wm-slider', SLIDER_COMPONENT],\n ['wm-spinner', SPINNER_COMPONENT],\n ['wm-switch', SWITCH_COMPONENT],\n ['wm-table', TABLE_COMPONENT],\n ['wm-tabs', TABS_COMPONENT],\n ['wm-tabpane', TAB_PANE_COMPONENT],\n ['wm-text', [...INPUT_TEXT_COMPONENT, ...INPUT_CALENDER_COMPONENT, ...INPUT_COLOR_COMPONENT, ...INPUT_EMAIL_COMPONENT, ...INPUT_NUMBER_COMPONENT]],\n ['wm-textarea', TEXTAREA_COMPONENT],\n ['wm-time', TIME_COMPONENT],\n ['wm-tile', TILE_DIRECTIVE],\n ['wm-top-nav', TOP_NAV_DIRECTIVE],\n ['wm-tree', TREE_COMPONENT],\n ['wm-video', VIDEO_COMPONENT],\n ['wm-wizard', WIZARD_COMPONENT],\n ['wm-wizardstep', WIZARD_COMPONENT],\n ['wm-repeat-template', REPEAT_TEMPLATE_DIRECTIVE],\n ['wm-composite', COMPOSITE_DIRECTIVE],\n ['accessroles', ACCESSROLES_DIRECTIVE],\n ['showindevice', SHOW_IN_DEVICE_DIRECTIVE],\n ['lazyload', LAZY_LOAD_DIRECTIVE],\n\n ['toDate', TO_DATE_PIPE],\n ['toCurrency', TO_CURRENCY_PIPE],\n ['numberToString', NUMBER_TO_STRING_PIPE],\n ['stringToNumber', STRING_TO_NUMBER_PIPE],\n ['timeFromNow', TIME_FROM_NOW_PIPE],\n ['prefix', PREFIX_PIPE],\n ['suffix', SUFFIX_PIPE],\n ['custom', CUSTOM_PIPE],\n]);\n","import {Comment, Element, getHtmlTagDefinition, HtmlParser, ParseSourceSpan, Text} from '@angular/compiler';\nimport {WIDGET_IMPORTS} from './imports';\nimport {find, isEqual, isFunction, remove, sortBy, uniqWith} from \"lodash-es\";\n\nconst CSS_REGEX = {\n COMMENTS_FORMAT : /\\/\\*((?!\\*\\/).|\\n)+\\*\\//g,\n SELECTOR_FORMAT : /[^\\{\\}]*\\{/gi,\n SELECTOR_EXCLUDE_FORMAT : /(@keyframes|@media|@font-face|@comment[0-9]+|from|to|[0-9]+%)\\b/i\n};\n\nconst isString = v => typeof v === 'string';\n\ninterface IProviderInfo {\n nodeName: string;\n provide: Map<string, any>;\n}\n\nconst OVERRIDES = {\n 'accessroles': '*accessroles',\n 'ng-if': '*ngIf',\n 'showindevice': '*wmShowInDevice',\n 'ng-class': '[ngClass]',\n 'data-ng-class': '[ngClass]',\n 'data-ng-src': 'src',\n 'ng-src': 'src',\n 'data-ng-href': 'href',\n 'ng-href': 'href',\n 'ng-disabled': 'disabled',\n 'data-ng-disabled': 'disabled',\n 'ng-model': '[ngModelOptions]=\"{standalone: true}\" [(ngModel)]'\n};\n\nconst selfClosingTags = new Set(['img']);\n\nexport const getBoundToExpr = (value: string) => {\n if (!value) {\n return null;\n }\n\n value = value.trim();\n if (value.startsWith('bind:')) {\n return value.substr(5);\n }\n};\n\nconst quoteAttr = v => {\n return ('' + v) /* Forces the conversion to string. */\n .replace(/&/g, '&amp;') /* This MUST be the 1st replacement. */\n .replace(/'/g, '&apos;') /* The 4 other predefined entities, required. */\n .replace(/\"/g, '&quot;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n};\n\nconst registry = new Map<string, any>();\nconst htmlParser = new HtmlParser();\nconst ignoreComments = true;\n\nconst empty = () => '';\n\nconst isEvent = name => name[0] === 'o' && name[1] === 'n' && name[2] === '-';\n\nconst getEventName = key => key.substr(3);\n\nconst processBinding = (attr, expr) => [`${attr.name}.bind`, quoteAttr(expr)];\n\nconst processEvent = attr => {\n const evtName = getEventName(attr.name);\n return [`${evtName}.event`, attr.value];\n};\n\n/**\n * Wraps the string with single quotes.\n * @param val\n */\nconst wrapWithApos = (val: string) => {\n return `&apos;${val.replace(/&apos/g, '&quot').replace(/&quot/g, '\\\\&quot')}&apos;`;\n};\nconst ELE_PREFIX = '.wm-app';\n\nconst processAttr = attr => {\n let overridden = OVERRIDES[attr.name];\n const value = attr.valueSpan ? attr.value : undefined;\n\n if (overridden) {\n /**\n * wrap value for accessroles with ''.\n * since accessroles is a structural directive, it will be transpiled to [accessroles]\n * hence, the value against it should be a computed string\n */\n if (attr.name === 'accessroles' || attr.name === 'showindevice') {\n return [overridden, `'${value}'`];\n }\n return [overridden, quoteAttr(value)];\n }\n\n if (isEvent(attr.name)) {\n return processEvent(attr);\n }\n\n const boundExpr = getBoundToExpr(attr.value);\n if (boundExpr) {\n return processBinding(attr, boundExpr);\n }\n\n return [attr.name, quoteAttr(value)];\n};\n\nexport const getDataSource = (dataSetExpr: string): string => {\n const parts = dataSetExpr.split('.');\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n return `${parts[0]}.${parts[1]}`;\n }\n};\n\nconst widgetChildAttrs = (() => {\n const childAttrs = new Map();\n const validChildAttrs = [\n `required`\n ];\n return {\n set: attrs => {\n attrs.forEach((val, key) => {\n validChildAttrs.includes(key) && (childAttrs.set(key, val));\n });\n },\n get: attrs => {\n const fltrAttrs = new Map();\n childAttrs.forEach((val, key) => {\n !attrs.get(key) && fltrAttrs.set(key, val);\n });\n return fltrAttrs;\n },\n clear: () => {\n childAttrs.clear();\n }\n };\n})();\nexport const setChildAttrs = attrs => {\n widgetChildAttrs.set(attrs);\n return '';\n};\nexport const getChildAttrs = attrs => {\n return getAttrMarkup(widgetChildAttrs.get(attrs));\n};\nexport const clearChildAttrs = () => {\n widgetChildAttrs.clear();\n return '';\n};\nexport const getFormMarkupAttr = attrs => {\n if (attrs.get('datavalue.bind')) {\n const onDataValueBinding = getDataSource(attrs.get('datavalue.bind'));\n attrs.set('datavaluesource.bind', onDataValueBinding);\n }\n return getAttrMarkup(attrs);\n};\n\nconst getAttrMap = attrs => {\n const attrMap = new Map<string, string>();\n attrs.forEach(attr => {\n let [attrName, attrValue] = processAttr(attr);\n attrMap.set(attrName, attrValue);\n });\n\n if (attrMap.get('dataset.bind')) {\n const dataSource = getDataSource(attrMap.get('dataset.bind'));\n if (dataSource) {\n attrMap.set('datasource.bind', dataSource);\n }\n }\n\n return attrMap;\n};\n\nexport const getAttrMarkup = (attrs: Map<string, string>) => {\n let attrMarkup = '';\n attrs.forEach((v, k) => {\n attrMarkup += ` ${k}`;\n if (v) {\n v = v.trim();\n if (k === '[ngClass]' && v.startsWith('{')) {\n v = v.replace(/\"/g, `'`);\n }\n if (k === 'show.bind' && attrs.get('deferload') === 'true') {\n v = v + `\" *lazyLoad=\"${wrapWithApos(v)}`;\n }\n attrMarkup += `=\"${v}\"`;\n }\n });\n\n return attrMarkup;\n};\n\nconst getRequiredProviders = (nodeDef: IBuildTaskDef, providers: Array<IProviderInfo>, nodeAttrs) => {\n if (!nodeDef.requires) {\n return [];\n }\n\n let requires = nodeDef.requires as any;\n\n if (isString(requires)) {\n requires = [requires];\n }\n\n if (!Array.isArray(requires)) {\n return [];\n }\n\n return requires.map(require => {\n // for dynamic table assigning parent provide map to the child,\n for (let i = nodeAttrs.length - 1; i >= 0; i-- ) {\n if (nodeAttrs[i].name === 'tableName') {\n return nodeDef[nodeAttrs[i].value];\n }\n }\n\n for (let i = providers.length - 1; i >= 0; i-- ) {\n if (providers[i].nodeName === require) {\n return providers[i].provide;\n }\n }\n });\n};\n\nconst DIMENSION_PROPS = ['padding', 'borderwidth', 'margin'];\n\nconst SEPARATOR = ' ', UNSET = 'unset';\n\nconst setDimensionProp = (cssObj, key, nv) => {\n let cssKey = key, val, top, right, bottom, left, suffix = '';\n\n function setVal(prop, value) {\n // if the value is UNSET, reset the existing value\n if (value === UNSET) {\n value = '';\n }\n cssObj[cssKey + prop + suffix] = value;\n }\n\n if (key === 'borderwidth') {\n suffix = 'width';\n cssKey = 'border';\n }\n\n val = nv;\n\n if (val.indexOf(UNSET) !== -1) {\n val = val.split(SEPARATOR);\n\n top = val[0];\n right = val[1] || val[0];\n bottom = val[2] || val[0];\n left = val[3] || val[1] || val[0];\n\n setVal('top', top);\n setVal('right', right);\n setVal('bottom', bottom);\n setVal('left', left);\n } else {\n if (key === 'borderwidth') {\n cssKey = 'borderwidth';\n }\n cssObj[cssKey] = nv;\n }\n};\n\nconst processDimensionAttributes = attrMap => {\n const attrKeys = Array.from(attrMap.keys());\n attrKeys.forEach((attrKey: any) => {\n if (DIMENSION_PROPS.includes(attrKey)) {\n const cssObj = {},\n attrValue = attrMap.get(attrKey);\n attrMap.delete(attrKey);\n setDimensionProp(cssObj, attrKey, attrValue);\n Object.keys(cssObj).forEach(key => {\n if (cssObj[key]) {\n attrMap.set(key, cssObj[key]);\n }\n });\n }\n });\n};\n\n// replace <:svg:svg> -> <svg>, <:svg:*> -> <svg:*>\nconst getNodeName = name => name.replace(':svg:svg', 'svg').replace(':svg:', 'svg:');\n\nexport const processNode = (node, importCollector: (i: ImportDef[]) => void, providers?: Array<IProviderInfo>) => {\n const nodeDef = registry.get(node.name);\n\n let pre, post, template;\n\n if (nodeDef) {\n pre = nodeDef.pre || empty;\n post = nodeDef.post || empty;\n template = nodeDef.template || empty;\n }\n\n let markup = '';\n let attrMap;\n let requiredProviders;\n let shared;\n\n if (!providers) {\n providers = [];\n }\n\n const isElementType = node instanceof Element;\n\n if (isElementType) {\n let provideInfo: IProviderInfo;\n\n if (nodeDef) {\n requiredProviders = getRequiredProviders(nodeDef, providers, node.attrs);\n shared = new Map();\n template(node, shared, ...requiredProviders);\n }\n\n attrMap = getAttrMap(node.attrs);\n processDimensionAttributes(attrMap);\n\n const nodeName = getNodeName(node.name);\n\n if (nodeDef) {\n markup = (<any>pre)(attrMap, shared, ...requiredProviders);\n if (nodeDef.provide) {\n provideInfo = {\n nodeName: node.name,\n provide: isFunction(nodeDef.provide) ? nodeDef.provide(attrMap, shared, ...requiredProviders) : nodeDef.provide\n };\n // For table node, assigning parent provide map to the child, as child requires some parent provide attrs.\n if (node.name === 'wm-table') {\n const tableColNodeDefn = registry.get('wm-table-column');\n tableColNodeDefn[find(node.attrs, (el) => el.name === 'name').value + provideInfo.provide.get('table_reference')] = provideInfo.provide;\n registry.set('wm-table-column', tableColNodeDefn);\n }\n providers.push(provideInfo);\n }\n } else {\n markup = `<${nodeName} ${getAttrMarkup(attrMap)}>`;\n }\n\n node.children.forEach((child: Node | any) => {\n if(child.attrs) {\n let showInDeviceAttr, accessRolesAttr, deferLoadAttr, showAttr;\n child.attrs.forEach(function(attr){\n if (attr.name === 'showindevice') {\n showInDeviceAttr = attr;\n importCollector(WIDGET_IMPORTS.get(\"showindevice\"))\n } else if (attr.name === 'accessroles') {\n accessRolesAttr = attr;\n importCollector(WIDGET_IMPORTS.get('accessroles'));\n } else if (attr.name === 'deferload') {\n deferLoadAttr = attr;\n importCollector(WIDGET_IMPORTS.get('lazyload'));\n } else if (attr.name === 'show') {\n showAttr = attr;\n }\n });\n if((showInDeviceAttr && accessRolesAttr) || (showInDeviceAttr && deferLoadAttr) || (accessRolesAttr && deferLoadAttr)) {\n /* If more than one out of showindevice, accessroles and deferload exist for a widget, add ng-container wrappers to fix angular limitation\n of applying only one structural directive to an element.\n * */\n const noSpan = ({} as ParseSourceSpan);\n const showInDeviceContainer:any = showInDeviceAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const accessRolesContainer:any = accessRolesAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const deferLoadContainer:any = deferLoadAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n if (showInDeviceContainer) {\n showInDeviceContainer.attrs.push(showInDeviceAttr);\n }\n if (accessRolesContainer) {\n accessRolesContainer.attrs.push(accessRolesAttr);\n }\n if (deferLoadContainer) {\n deferLoadContainer.attrs.push(deferLoadAttr);\n if (showAttr) {\n deferLoadContainer.attrs.push(showAttr);\n }\n }\n remove(child.attrs, function (attr) {\n // @ts-ignore\n return attr.name === 'showindevice' || attr.name === 'accessroles' || attr.name === 'deferload'\n });\n let childContainer, parentContainer;\n if (showInDeviceAttr && accessRolesAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = accessRolesContainer;\n } else if (showInDeviceAttr && deferLoadAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = deferLoadContainer;\n } else if (accessRolesAttr && deferLoadAttr) {\n childContainer = deferLoadContainer;\n parentContainer = accessRolesContainer;\n }\n // wrap current node elements inside first ng-container(childContainer) and that container's elements inside another ng-container(parentContainer)\n childContainer.children = [child];\n parentContainer.children = [childContainer];\n // if all three directives exist, create another wrapper for third ng-container(grandParentContainer)\n if (showInDeviceAttr && accessRolesAttr && deferLoadAttr) {\n const grandParentContainer = deferLoadContainer;\n grandParentContainer.children = [parentContainer];\n child = grandParentContainer;\n } else {\n child = parentContainer;\n }\n\n }\n }\n return markup += processNode(child, importCollector, providers);\n });\n\n if (nodeDef) {\n if (provideInfo) {\n providers.splice(providers.indexOf(provideInfo), 1);\n }\n markup += (<any>post)(attrMap, shared, ...requiredProviders);\n } else {\n if (node.endSourceSpan && !getHtmlTagDefinition(node.name).isVoid) {\n markup += `</${nodeName}>`;\n }\n }\n } else if (node instanceof Text) {\n markup += node.value;\n } else if (node instanceof Comment) {\n if (!ignoreComments) {\n markup += node.value;\n }\n }\n importCollector(WIDGET_IMPORTS.get(node.name));\n if (nodeDef && nodeDef.imports) {\n let imports = [];\n if (typeof nodeDef.imports === 'function') {\n imports = nodeDef.imports(attrMap);\n } else {\n imports = nodeDef.imports;\n }\n imports.forEach( i => {\n importCollector(WIDGET_IMPORTS.get(i));\n });\n }\n return markup;\n};\n\nexport const transpile = (markup: string = '') => {\n if (!markup.length) {\n return;\n }\n let requiredWMComponents = [];\n const nodes = htmlParser.parse(markup, '');\n\n if (nodes.errors.length) {\n return;\n }\n\n let output = '';\n for (const node of nodes.rootNodes) {\n output += processNode(node, (imports: ImportDef[]) => {\n if (imports) {\n requiredWMComponents = requiredWMComponents.concat(imports);\n }\n });\n }\n requiredWMComponents = uniqWith(requiredWMComponents, isEqual);\n requiredWMComponents = sortBy(requiredWMComponents, ['from', 'name']);\n return {\n markup: output,\n requiredWMComponents: requiredWMComponents\n };\n};\n\nexport const register = (nodeName: string, nodeDefFn: () => IBuildTaskDef) => registry.set(nodeName, nodeDefFn());\n\nexport interface ImportDef {\n from: string;\n name: string;\n as?: string;\n forRoot?: boolean;\n platformType?: string;\n}\n\nexport interface IBuildTaskDef {\n requires?: string | Array<string>;\n template?: (node: Element | Text | Comment, shared?: Map<any, any>, ...requires: Array<Map<any, any>>) => void;\n pre: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n provide?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => Map<any, any>;\n post?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n imports?: string[] | ((attrs: Map<string, string>) => string[]);\n}\n\nexport const scopeComponentStyles = (componentName, componentType, styles = '') => {\n componentName = componentName.toLowerCase();\n const comments = {};\n let commentCount = 0;\n if (styles.startsWith('/*DISABLE_SCOPING*/')) {\n return styles;\n }\n styles = styles.replace(CSS_REGEX.COMMENTS_FORMAT, comment => {\n const key = `@comment${commentCount++}{`;\n comments[key] = comment;\n return key;\n });\n styles = styles.replace(CSS_REGEX.SELECTOR_FORMAT, (selector) => {\n if (!CSS_REGEX.SELECTOR_EXCLUDE_FORMAT.test(selector)) {\n const firstNonSpaceCharIndex = selector.match(/\\S/).index;\n let prefixSpaceCharSeq = '';\n if (firstNonSpaceCharIndex > 0) {\n prefixSpaceCharSeq = selector.substring(0, firstNonSpaceCharIndex);\n selector = selector.substring(firstNonSpaceCharIndex);\n }\n if (!selector.startsWith('/*') && selector.trim().length > 0) {\n // splits the selector by commas and we iterate over the array and add page level scoping and join it.\n selector = selector.split(',').map(s => {\n let prefix = ELE_PREFIX;\n s = s.trim();\n const spaceIndex = s.indexOf(' ');\n if (s.startsWith(ELE_PREFIX)) {\n if (spaceIndex > 0) {\n prefix = s.substring(0, spaceIndex);\n s = s.substring(spaceIndex + 1);\n } else {\n return s;\n }\n }\n\n if (componentType === 0 || componentType === 'PAGE') {\n s = `${prefix} app-page-${componentName} ${s}`;\n } else if (componentType === 1 || componentType === 'PREFAB') {\n s = `${prefix} app-prefab-${componentName} ${s}`;\n } else if (componentType === 2 || componentType === 'PARTIAL') {\n s = `${prefix} app-partial-${componentName} ${s}`;\n } else if(componentType === 3 || componentType === 'WIDGET'){\n s = `${prefix} app-custom-${componentName} ${s}`;\n }\n return s;\n }).join(',');\n }\n selector = prefixSpaceCharSeq + selector;\n }\n return selector;\n });\n for (const key in comments) {\n styles = styles.replace(key, comments[key]);\n }\n return styles;\n};\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../projects/transpiler/src/imports.ts","../../../projects/transpiler/src/build.ts","../../../projects/transpiler/src/index.ts"],"sourcesContent":["import {ImportDef} from './build';\n\n// Angular Core Modules\nconst NG_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'FormsModule', as: 'ngFormsModule' }];\nconst NG_REACTIVE_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'ReactiveFormsModule', as: 'ngReactiveFormsModule' }];\n\n// NGX Bootstrap Modules\nconst NGX_BS_DATE_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/datepicker', name: 'BsDatepickerModule', as: 'ngx_BsDatepickerModule' }];\nconst NGX_CAROUSEL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/carousel', name: 'CarouselModule', as: 'ngxCarouselModule', forRoot: true }];\nconst NGX_COLOR_PICKER_DIRECTIVE: ImportDef[] = [{ from: 'ngx-color-picker', name: 'ColorPickerDirective', as: 'ngx_ColorPickerDirective' }];\nconst NGX_DROP_DOWN_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/dropdown', name: 'BsDropdownModule', as: 'ngxBsDropdownModule', forRoot: true }];\n//const NGX_MODAL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/modal', name: 'ModalModule', as: 'ngx_ModalModule' }];\nconst NGX_PAGINATION_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/pagination', name: 'PaginationModule', as: 'ngxPaginationModule', forRoot: true }];\nconst NGX_POPOVER_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/popover', name: 'PopoverModule', as: 'ngxPopoverModule', forRoot: true }];\nconst NGX_TIME_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/timepicker', name: 'TimepickerModule', as: 'ngx_TimepickerModule', forRoot: true }];\nconst NGX_TOOL_TIP_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/tooltip', name: 'TooltipModule', as: 'ngxTooltipModule', forRoot: true }];\nconst NGX_TYPE_HEAD_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/typeahead', name: 'TypeaheadModule', as: 'ngxTypeaheadModule', forRoot: true }];\n\n// Progess Modules\nconst PROGRESS_BAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-bar', name: 'ProgressBarComponent' }];\nconst PROGRESS_CIRCLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-circle', name: 'ProgressCircleComponent' }];\nconst PAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageDirective' }];\nconst PAGINATION_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_PAGINATION_MODULE, { from: '@wm/components/data/pagination', name: 'PaginationComponent' }];\n\n// Basic Components\nconst ANCHOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/anchor', name: 'AnchorComponent' }];\nconst AUDIO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/audio', name: 'AudioComponent' }];\nconst HTML_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/html', name: 'HtmlDirective' }];\nconst ICON_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/icon', name: 'IconComponent' }];\nconst IFRAME_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/iframe', name: 'IframeComponent' }];\nconst LABEL_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/label', name: 'LabelDirective' }];\nconst PICTURE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/picture', name: 'PictureDirective' }];\nconst SEARCH_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NGX_TYPE_HEAD_MODULE,\n { from: '@wm/components/basic/search', name: 'ScrollableDirective' },\n { from: '@wm/components/basic/search', name: 'SearchComponent' }];\nconst SPINNER_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/spinner', name: 'SpinnerComponent' }];\nconst VIDEO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/video', name: 'VideoComponent' }];\n\n// Container Components\nconst PARTIAL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialDirective' }];\nconst PARTIAL_CONTAINER: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamHandlerDirective' }, { from: '@wm/components/base', name: 'PartialContainerDirective' }]\nconst ACCORDION_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/accordion', name: 'AccordionPaneComponent' }];\nconst ACCORDION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/accordion', name: 'AccordionDirective' }];\nconst CONTAINER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/base', name: 'ContainerDirective' }]\nconst PARTIAL_PARAM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamDirective' }];\nconst LINEAR_LAYOUT_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/linear-layout', name: 'LinearLayoutItemDirective' }];\nconst LINEAR_LAYOUT_DIRECTIVE: ImportDef[] = [...LINEAR_LAYOUT_ITEM_DIRECTIVE, { from: '@wm/components/containers/linear-layout', name: 'LinearLayoutDirective' }];\nconst TAB_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/tabs', name: 'TabPaneComponent' }];\nconst TABS_COMPONENT: ImportDef[] = [...TAB_PANE_COMPONENT, { from: '@wm/components/containers/tabs', name: 'TabsComponent' }];\nconst WIZARD_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/wizard', name: 'WizardActionDirective' }];\nconst WIZARD_STEP_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/wizard', name: 'WizardStepComponent' }];\nconst WIZARD_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...WIZARD_ACTION_DIRECTIVE, ...WIZARD_STEP_DIRECTIVE, { from: '@wm/components/containers/wizard', name: 'WizardComponent' }];\nconst LAYOUT_GRID_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridColumnDirective' }];\nconst LAYOUT_GRID_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridRowDirective' }];\nconst LAYOUT_GRID_DIRECTIVE: ImportDef[] = [...LAYOUT_GRID_ROW_DIRECTIVE, ...LAYOUT_GRID_COLUMN_DIRECTIVE, { from: '@wm/components/containers/layout-grid', name: 'LayoutgridDirective' }];\nconst PANEL_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/panel', name: 'PanelComponent' }];\nconst TILE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/tile', name: 'TileDirective' }];\nconst REPEAT_TEMPLATE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'RepeatTemplateDirective' }];\n\n// Dialog Modules\nconst ALERT_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/alert-dialog', name: 'AlertDialogComponent' }];\nconst CONFIRM_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/confirm-dialog', name: 'ConfirmDialogComponent' }];\nconst DESIGN_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/design-dialog', name: 'DialogComponent' }];\nconst IFRAME_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/iframe-dialog', name: 'IframeDialogComponent' }];\nconst LOGIN_DIALOG_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs/login-dialog', name: 'LoginDialogDirective' }, ...DESIGN_DIALOG_COMPONENT];\nconst PARTIAL_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/partial-dialog', name: 'PartialDialogComponent' }, ...CONTAINER_DIRECTIVE];\nconst DIALOGACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs', name: 'DialogFooterDirective' }];\n\n// Navigation Modules\nconst NAV_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavItemDirective' }];\nconst NAV_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavComponent' }];\nconst NAVIGATION_CONTROL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavigationControlDirective' }];\nconst MENU_DROPDOWN_ITEM_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }];\nconst MENU_DROPDOWN_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }]; // Duplicate, consider removing one\nconst MENU_COMPONENT: ImportDef[] = [...NGX_DROP_DOWN_MODULE, ...MENU_DROPDOWN_COMPONENT, ...MENU_DROPDOWN_ITEM_COMPONENT, ...NAVIGATION_CONTROL_DIRECTIVE, ...NAV_COMPONENT, ...NAV_ITEM_DIRECTIVE, { from: '@wm/components/navigation/menu', name: 'MenuComponent' }];\nconst MESSAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/base', name: 'MessageComponent' }];\nconst BREAD_CRUMB_COMPONENT: ImportDef[] = [...MENU_COMPONENT, { from: '@wm/components/navigation/breadcrumb', name: 'BreadcrumbComponent' }];\nconst NAVBAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/navbar', name: 'NavbarComponent' }];\nconst POPOVER_COMPONENT: ImportDef[] = [...NGX_POPOVER_MODULE, { from: '@wm/components/navigation/popover', name: 'PopoverComponent' }, ...CONTAINER_DIRECTIVE];\nconst TOP_NAV_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/top-nav', name: 'TopNavDirective' }];\n\n// Input Components\nconst CALENDAR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, { from: '@wm/components/input/calendar', name: 'CalendarComponent' }];\nconst CHIPS_COMPONENT: ImportDef[] = [...SEARCH_COMPONENT, { from: '@wm/components/input/chips', name: 'ChipsComponent' }];\nconst COLOR_PICKER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_COLOR_PICKER_DIRECTIVE, { from: '@wm/components/input/color-picker', name: 'ColorPickerComponent' }];\nconst CURRENCY_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/currency', name: 'CurrencyComponent' }];\nconst DATE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date', name: 'DateComponent' }];\nconst DATE_TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date-time', name: 'DatetimeComponent' }];\nconst TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/time', name: 'TimeComponent' }];\nconst FILE_UPLOAD_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/file-upload', name: 'FileUploadComponent' }];\nconst RATING_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/rating', name: 'RatingComponent' }];\nconst SLIDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/slider', name: 'SliderComponent' }];\nconst BUTTON_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button', name: 'ButtonComponent' }];\nconst BUTTON_GROUP_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button-group', name: 'ButtonGroupDirective' }];\n// const CAPTION_POSITION_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CaptionPositionDirective' }];\nconst CHECKBOX_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkbox', name: 'CheckboxComponent' }];\nconst CHECKBOXSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkboxset', name: 'CheckboxsetComponent' }];\n// const COMPOSITE_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CompositeDirective' }];\nconst NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/number', name: 'NumberComponent' }];\nconst RADIOSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/radioset', name: 'RadiosetComponent' }];\nconst SELECT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/select', name: 'SelectComponent' }];\nconst SWITCH_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/switch', name: 'SwitchComponent' }];\nconst INPUT_CALENDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputCalendarComponent' }];\nconst INPUT_COLOR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputColorComponent' }];\nconst INPUT_EMAIL_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputEmailComponent' }];\nconst INPUT_NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputNumberComponent' }];\nconst INPUT_TEXT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputTextComponent' }];\nconst TEXTAREA_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/textarea', name: 'TextareaComponent' }];\n\n// Data Components\nconst CARD_ACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardActionsDirective' }];\nconst CARD_CONTENT_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/data/card', name: 'CardContentComponent' }];\nconst CARD_FOOTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardFooterDirective' }];\nconst CARD_COMPONENT: ImportDef[] = [\n ...NGX_DROP_DOWN_MODULE,\n ...MENU_COMPONENT,\n ...CARD_ACTIONS_DIRECTIVE,\n ...CARD_CONTENT_COMPONENT,\n ...CARD_FOOTER_DIRECTIVE,\n { from: '@wm/components/data/card', name: 'CardComponent' }];\nconst LIST_ITEM_DIRECTIVE: ImportDef[] = [...PAGINATION_COMPONENT, { from: '@wm/components/data/list', name: 'ListItemDirective' }];\nconst LIST_COMPONENT: ImportDef[] = [...PAGINATION_COMPONENT, ...LIST_ITEM_DIRECTIVE, { from: '@wm/components/data/list', name: 'ListComponent' }];\nconst TABLE_CUD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableCUDDirective' }];\nconst TABLE_FILTER_SORT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableFilterSortDirective' }];\nconst TABLE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableActionDirective' }];\nconst TABLE_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnDirective' }];\nconst TABLE_COLUMN_GROUP_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnGroupDirective' }];\nconst TABLE_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowDirective' }, ...CONTAINER_DIRECTIVE, ...PARTIAL_CONTAINER];\nconst TABLE_ROW_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowActionDirective' }, ...BUTTON_COMPONENT, ...ANCHOR_COMPONENT];\nconst TABLE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...PAGINATION_COMPONENT,\n ...MENU_COMPONENT,\n ...NGX_TOOL_TIP_MODULE,\n ...LIST_COMPONENT,\n ...TABLE_ACTION_DIRECTIVE,\n ...TABLE_CUD_DIRECTIVE,\n ...TABLE_FILTER_SORT_DIRECTIVE,\n ...TABLE_COLUMN_DIRECTIVE,\n ...TABLE_COLUMN_GROUP_DIRECTIVE,\n ...TABLE_ROW_DIRECTIVE,\n ...TABLE_ROW_ACTION_DIRECTIVE,\n { from: '@wm/components/data/table', name: 'TableComponent' }];\nconst LIVE_TABLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/data/live-table', name: 'LiveTableComponent' }];\n\n// Form Components and Directives\nconst FORM_WIDGET_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormWidgetDirective' }];\nconst FORM_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormActionDirective' }];\nconst FORM_FIELD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormFieldDirective' }];\nconst LIVE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveActionsDirective' }];\nconst DEPENDS_ON_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'DependsonDirective' }];\nconst LIVE_FILTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFilterDirective' }];\nconst LIVE_FORM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFormDirective' }];\nconst FORM_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...FORM_ACTION_DIRECTIVE,\n ...FORM_WIDGET_DIRECTIVE,\n ...FORM_FIELD_DIRECTIVE,\n ...LIVE_ACTION_DIRECTIVE,\n ...DEPENDS_ON_DIRECTIVE,\n ...LIVE_FILTER_DIRECTIVE,\n ...LIVE_FORM_DIRECTIVE,\n { from: '@wm/components/data/form', name: 'FormComponent' }];\nconst COMPOSITE_DIRECTIVE = [{ from: '@wm/components/input/composite', name: 'CompositeDirective' }, { from: '@wm/components/input/caption-position', name: 'CaptionPositionDirective' }]\n\n// Page Structure Components // TODO: PARTIAL_CONTAINER these needed ? appComponent has imports at root\nconst FOOTER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/footer', name: 'FooterDirective' }];\nconst HEADER_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/header', name: 'HeaderComponent' }];\nconst LEFT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/left-panel', name: 'LeftPanelDirective' }];\nconst RIGHT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/right-panel', name: 'RightPanelDirective' }];\nconst PAGE_CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageContentComponent' }];\nconst SPA_PAGE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'SpaPageDirective' }];\nconst LAYOUT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'LayoutDirective' }];\nconst CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'ContentComponent' }];\n\n// Advanced Components\nconst CAROUSEL_TEMPLATE_DIRECTIVE: ImportDef[] = [...NGX_CAROUSEL_MODULE, { from: '@wm/components/advanced/carousel', name: 'CarouselTemplateDirective' }];\nconst CAROUSEL_COMPONENT: ImportDef[] = [...NGX_CAROUSEL_MODULE, ...CAROUSEL_TEMPLATE_DIRECTIVE, { from: '@wm/components/advanced/carousel', name: 'CarouselDirective' }];\nconst CHART_COMPONENT: ImportDef[] = [{ from: '@wm/components/chart', name: 'ChartComponent' }, {from: '@wm/components/base', name: 'RedrawableDirective'}];\nconst CUSTOM_WIDGET_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/custom', name: 'CustomWidgetContainerDirective' }];\nconst CUSTOM_WIDGET_DIRECTIVE: ImportDef[] = [...CUSTOM_WIDGET_CONTAINER_DIRECTIVE, { from: '@wm/components/advanced/custom', name: 'CustomWidgetDirective' }];\nconst LOGIN_COMPONENT: ImportDef[] = [{ from: '@wm/components/advanced/login', name: 'LoginComponent' }];\nconst MARQUEE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/marquee', name: 'MarqueeDirective' }];\nconst PREFAB_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabContainerDirective' }];\nconst PREFAB_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabDirective' }];\nconst RICH_TEXT_EDITOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/rich-text-editor', name: 'RichTextEditorComponent' }];\nconst TREE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/tree', name: 'TreeComponent' }];\nconst ACCESSROLES_DIRECTIVE = [{from: '@wm/runtime/base', name: 'AccessrolesDirective'}];\nconst SHOW_IN_DEVICE_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'ShowInDeviceDirective'}];\nconst LAZY_LOAD_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'LazyLoadDirective'}];\n// Pipes\nconst TO_DATE_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToDatePipe' }];\nconst TO_CURRENCY_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToCurrencyPipe' }];\nconst NUMBER_TO_STRING_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'NumberToStringPipe' }];\nconst STRING_TO_NUMBER_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'StringToNumberPipe' }];\nconst TIME_FROM_NOW_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'TimeFromNowPipe' }];\nconst PREFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'PrefixPipe' }];\nconst SUFFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'SuffixPipe' }];\nconst CUSTOM_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'CustomPipe' }];\n\nexport const WIDGET_IMPORTS: Map<string, ImportDef[]> = new Map([\n ['wm-accordion', ACCORDION_DIRECTIVE],\n ['wm-accordionpane', ACCORDION_PANE_COMPONENT],\n ['wm-anchor', ANCHOR_COMPONENT],\n ['wm-alertdialog', ALERT_DIALOG_COMPONENT],\n ['wm-audio', AUDIO_COMPONENT],\n ['wm-button', BUTTON_COMPONENT],\n ['wm-buttongroup', BUTTON_GROUP_DIRECTIVE],\n ['wm-breadcrumb', BREAD_CRUMB_COMPONENT],\n ['wm-calendar', CALENDAR_COMPONENT],\n ['wm-card', CARD_COMPONENT],\n ['wm-card-actions', CARD_ACTIONS_DIRECTIVE],\n ['wm-card-content', CARD_CONTENT_COMPONENT],\n ['wm-card-footer', CARD_FOOTER_DIRECTIVE],\n ['wm-carousel', CAROUSEL_COMPONENT],\n ['wm-carousel-content', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-carousel-template', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-chart', CHART_COMPONENT],\n ['wm-checkbox', CHECKBOX_COMPONENT],\n ['wm-checkboxset', CHECKBOXSET_COMPONENT],\n ['wm-chips', CHIPS_COMPONENT],\n ['wm-colorpicker', COLOR_PICKER_COMPONENT],\n ['wm-confirmdialog', CONFIRM_DIALOG_COMPONENT],\n ['wm-container', CONTAINER_DIRECTIVE],\n ['wm-param', PARTIAL_PARAM_DIRECTIVE],\n ['wm-content', CONTENT_COMPONENT],\n ['wm-currency', CURRENCY_COMPONENT],\n ['wm-date', DATE_COMPONENT],\n ['wm-datetime', DATE_TIME_COMPONENT],\n ['wm-dialog', DESIGN_DIALOG_COMPONENT],\n ['wm-dialogactions', DIALOGACTIONS_DIRECTIVE],\n ['wm-footer', FOOTER_DIRECTIVE],\n ['wm-form', FORM_COMPONENT],\n ['wm-form-action', FORM_ACTION_DIRECTIVE],\n ['wm-form-field', FORM_FIELD_DIRECTIVE],\n ['wm-filter-field', LIVE_FILTER_DIRECTIVE],\n ['wm-fileupload', FILE_UPLOAD_COMPONENT],\n ['wm-gridrow', LAYOUT_GRID_ROW_DIRECTIVE],\n ['wm-gridcolumn', LAYOUT_GRID_COLUMN_DIRECTIVE],\n ['wm-header', HEADER_COMPONENT],\n ['wm-html', HTML_COMPONENT],\n ['wm-icon', ICON_COMPONENT],\n ['wm-iframe', IFRAME_COMPONENT],\n ['wm-iframedialog', IFRAME_DIALOG_COMPONENT],\n ['wm-label', LABEL_COMPONENT],\n ['wm-layout', LAYOUT_DIRECTIVE],\n ['wm-layoutgrid', LAYOUT_GRID_DIRECTIVE],\n ['wm-left-panel', LEFT_PANEL_DIRECTIVE],\n ['wm-linearlayout', LINEAR_LAYOUT_DIRECTIVE],\n ['wm-linearlayoutitem', LINEAR_LAYOUT_ITEM_DIRECTIVE],\n ['wm-list', LIST_COMPONENT],\n ['wm-livetable', LIVE_TABLE_COMPONENT],\n ['wm-login', LOGIN_COMPONENT],\n ['wm-custom', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-custom-widget', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-logindialog', LOGIN_DIALOG_DIRECTIVE],\n ['wm-marquee', MARQUEE_DIRECTIVE],\n ['wm-menu', MENU_COMPONENT],\n ['wm-message', MESSAGE_COMPONENT],\n ['wm-nav', NAV_COMPONENT],\n ['wm-navbar', NAVBAR_COMPONENT],\n ['wm-nav-item', NAV_ITEM_DIRECTIVE],\n ['wm-number', NUMBER_COMPONENT],\n ['wm-partial', PARTIAL_DIRECTIVE],\n ['wm-page', PAGE_COMPONENT],\n ['wm-page-content', PAGE_CONTENT_COMPONENT],\n ['spa-page-content', SPA_PAGE_DIRECTIVE],\n ['wm-pagedialog', PARTIAL_DIALOG_COMPONENT],\n ['wm-pagination', PAGINATION_COMPONENT],\n ['wm-panel', PANEL_COMPONENT],\n ['wm-panel-footer', PANEL_COMPONENT],\n ['wm-picture', PICTURE_COMPONENT],\n ['wm-popover', POPOVER_COMPONENT],\n ['wm-progress-bar', PROGRESS_BAR_COMPONENT],\n ['wm-prefab', PREFAB_DIRECTIVE],\n ['wm-prefab-container', PREFAB_CONTAINER_DIRECTIVE],\n ['wm-progress-circle', PROGRESS_CIRCLE_COMPONENT],\n ['wm-radioset', RADIOSET_COMPONENT],\n ['wm-rating', RATING_COMPONENT],\n ['wm-richtexteditor', RICH_TEXT_EDITOR_COMPONENT],\n ['wm-right-panel', RIGHT_PANEL_DIRECTIVE],\n ['wm-select', SELECT_COMPONENT],\n ['wm-search', SEARCH_COMPONENT],\n ['wm-slider', SLIDER_COMPONENT],\n ['wm-spinner', SPINNER_COMPONENT],\n ['wm-switch', SWITCH_COMPONENT],\n ['wm-table', TABLE_COMPONENT],\n ['wm-tabs', TABS_COMPONENT],\n ['wm-tabpane', TAB_PANE_COMPONENT],\n ['wm-text', [...INPUT_TEXT_COMPONENT, ...INPUT_CALENDER_COMPONENT, ...INPUT_COLOR_COMPONENT, ...INPUT_EMAIL_COMPONENT, ...INPUT_NUMBER_COMPONENT]],\n ['wm-textarea', TEXTAREA_COMPONENT],\n ['wm-time', TIME_COMPONENT],\n ['wm-tile', TILE_DIRECTIVE],\n ['wm-top-nav', TOP_NAV_DIRECTIVE],\n ['wm-tree', TREE_COMPONENT],\n ['wm-video', VIDEO_COMPONENT],\n ['wm-wizard', WIZARD_COMPONENT],\n ['wm-wizardstep', WIZARD_COMPONENT],\n ['wm-repeat-template', REPEAT_TEMPLATE_DIRECTIVE],\n ['wm-composite', COMPOSITE_DIRECTIVE],\n ['accessroles', ACCESSROLES_DIRECTIVE],\n ['showindevice', SHOW_IN_DEVICE_DIRECTIVE],\n ['lazyload', LAZY_LOAD_DIRECTIVE],\n\n ['toDate', TO_DATE_PIPE],\n ['toCurrency', TO_CURRENCY_PIPE],\n ['numberToString', NUMBER_TO_STRING_PIPE],\n ['stringToNumber', STRING_TO_NUMBER_PIPE],\n ['timeFromNow', TIME_FROM_NOW_PIPE],\n ['prefix', PREFIX_PIPE],\n ['suffix', SUFFIX_PIPE],\n ['custom', CUSTOM_PIPE],\n]);\n","import {Comment, Element, getHtmlTagDefinition, HtmlParser, ParseSourceSpan, Text} from '@angular/compiler';\nimport {WIDGET_IMPORTS} from './imports';\nimport {find, isEqual, isFunction, remove, sortBy, uniqWith} from \"lodash-es\";\n\nconst CSS_REGEX = {\n COMMENTS_FORMAT : /\\/\\*((?!\\*\\/).|\\n)+\\*\\//g,\n SELECTOR_FORMAT : /[^\\{\\}]*\\{/gi,\n SELECTOR_EXCLUDE_FORMAT : /(@keyframes|@media|@font-face|@comment[0-9]+|from|to|[0-9]+%)\\b/i\n};\n\nconst isString = v => typeof v === 'string';\n\ninterface IProviderInfo {\n nodeName: string;\n provide: Map<string, any>;\n}\n\nconst OVERRIDES = {\n 'accessroles': '*accessroles',\n 'ng-if': '*ngIf',\n 'showindevice': '*wmShowInDevice',\n 'ng-class': '[ngClass]',\n 'data-ng-class': '[ngClass]',\n 'data-ng-src': 'src',\n 'ng-src': 'src',\n 'data-ng-href': 'href',\n 'ng-href': 'href',\n 'ng-disabled': 'disabled',\n 'data-ng-disabled': 'disabled',\n 'ng-model': '[ngModelOptions]=\"{standalone: true}\" [(ngModel)]'\n};\n\nconst selfClosingTags = new Set(['img']);\n\nexport const getBoundToExpr = (value: string) => {\n if (!value) {\n return null;\n }\n\n value = value.trim();\n if (value.startsWith('bind:')) {\n return value.substr(5);\n }\n};\n\nconst quoteAttr = v => {\n return ('' + v) /* Forces the conversion to string. */\n .replace(/&/g, '&amp;') /* This MUST be the 1st replacement. */\n .replace(/'/g, '&apos;') /* The 4 other predefined entities, required. */\n .replace(/\"/g, '&quot;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n};\n\nconst registry = new Map<string, any>();\nconst htmlParser = new HtmlParser();\nconst ignoreComments = true;\n\nconst empty = () => '';\n\nconst isEvent = name => name[0] === 'o' && name[1] === 'n' && name[2] === '-';\n\nconst getEventName = key => key.substr(3);\n\nconst processBinding = (attr, expr) => [`${attr.name}.bind`, quoteAttr(expr)];\n\nconst processEvent = attr => {\n const evtName = getEventName(attr.name);\n return [`${evtName}.event`, attr.value];\n};\n\n/**\n * Wraps the string with single quotes.\n * @param val\n */\nconst wrapWithApos = (val: string) => {\n return `&apos;${val.replace(/&apos/g, '&quot').replace(/&quot/g, '\\\\&quot')}&apos;`;\n};\nconst ELE_PREFIX = '.wm-app';\n\nconst processAttr = attr => {\n let overridden = OVERRIDES[attr.name];\n const value = attr.valueSpan ? attr.value : undefined;\n\n if (overridden) {\n /**\n * wrap value for accessroles with ''.\n * since accessroles is a structural directive, it will be transpiled to [accessroles]\n * hence, the value against it should be a computed string\n */\n if (attr.name === 'accessroles' || attr.name === 'showindevice') {\n return [overridden, `'${value}'`];\n }\n return [overridden, quoteAttr(value)];\n }\n\n if (isEvent(attr.name)) {\n return processEvent(attr);\n }\n\n const boundExpr = getBoundToExpr(attr.value);\n if (boundExpr) {\n return processBinding(attr, boundExpr);\n }\n\n return [attr.name, quoteAttr(value)];\n};\n\nexport const getDataSource = (dataSetExpr: string): string => {\n const parts = dataSetExpr.split('.');\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n return `${parts[0]}.${parts[1]}`;\n }\n};\n\nconst widgetChildAttrs = (() => {\n const childAttrs = new Map();\n const validChildAttrs = [\n `required`\n ];\n return {\n set: attrs => {\n attrs.forEach((val, key) => {\n validChildAttrs.includes(key) && (childAttrs.set(key, val));\n });\n },\n get: attrs => {\n const fltrAttrs = new Map();\n childAttrs.forEach((val, key) => {\n !attrs.get(key) && fltrAttrs.set(key, val);\n });\n return fltrAttrs;\n },\n clear: () => {\n childAttrs.clear();\n }\n };\n})();\nexport const setChildAttrs = attrs => {\n widgetChildAttrs.set(attrs);\n return '';\n};\nexport const getChildAttrs = attrs => {\n return getAttrMarkup(widgetChildAttrs.get(attrs));\n};\nexport const clearChildAttrs = () => {\n widgetChildAttrs.clear();\n return '';\n};\nexport const getFormMarkupAttr = attrs => {\n if (attrs.get('datavalue.bind')) {\n const onDataValueBinding = getDataSource(attrs.get('datavalue.bind'));\n attrs.set('datavaluesource.bind', onDataValueBinding);\n }\n return getAttrMarkup(attrs);\n};\n\nconst getAttrMap = attrs => {\n const attrMap = new Map<string, string>();\n attrs.forEach(attr => {\n let [attrName, attrValue] = processAttr(attr);\n attrMap.set(attrName, attrValue);\n });\n\n if (attrMap.get('dataset.bind')) {\n const dataSource = getDataSource(attrMap.get('dataset.bind'));\n if (dataSource) {\n attrMap.set('datasource.bind', dataSource);\n }\n }\n\n return attrMap;\n};\n\nexport const getAttrMarkup = (attrs: Map<string, string>) => {\n let attrMarkup = '';\n attrs.forEach((v, k) => {\n attrMarkup += ` ${k}`;\n if (v) {\n v = v.trim();\n if (k === '[ngClass]' && v.startsWith('{')) {\n v = v.replace(/\"/g, `'`);\n }\n if (k === 'show.bind' && attrs.get('deferload') === 'true') {\n v = v + `\" *lazyLoad=\"${wrapWithApos(v)}`;\n }\n attrMarkup += `=\"${v}\"`;\n }\n });\n\n return attrMarkup;\n};\n\nconst getRequiredProviders = (nodeDef: IBuildTaskDef, providers: Array<IProviderInfo>, nodeAttrs) => {\n if (!nodeDef.requires) {\n return [];\n }\n\n let requires = nodeDef.requires as any;\n\n if (isString(requires)) {\n requires = [requires];\n }\n\n if (!Array.isArray(requires)) {\n return [];\n }\n\n return requires.map(require => {\n // for dynamic table assigning parent provide map to the child,\n for (let i = nodeAttrs.length - 1; i >= 0; i-- ) {\n if (nodeAttrs[i].name === 'tableName') {\n return nodeDef[nodeAttrs[i].value];\n }\n }\n\n for (let i = providers.length - 1; i >= 0; i-- ) {\n if (providers[i].nodeName === require) {\n return providers[i].provide;\n }\n }\n });\n};\n\nconst DIMENSION_PROPS = ['padding', 'borderwidth', 'margin'];\n\nconst SEPARATOR = ' ', UNSET = 'unset';\n\nconst setDimensionProp = (cssObj, key, nv) => {\n let cssKey = key, val, top, right, bottom, left, suffix = '';\n\n function setVal(prop, value) {\n // if the value is UNSET, reset the existing value\n if (value === UNSET) {\n value = '';\n }\n cssObj[cssKey + prop + suffix] = value;\n }\n\n if (key === 'borderwidth') {\n suffix = 'width';\n cssKey = 'border';\n }\n\n val = nv;\n\n if (val.indexOf(UNSET) !== -1) {\n val = val.split(SEPARATOR);\n\n top = val[0];\n right = val[1] || val[0];\n bottom = val[2] || val[0];\n left = val[3] || val[1] || val[0];\n\n setVal('top', top);\n setVal('right', right);\n setVal('bottom', bottom);\n setVal('left', left);\n } else {\n if (key === 'borderwidth') {\n cssKey = 'borderwidth';\n }\n cssObj[cssKey] = nv;\n }\n};\n\nconst processDimensionAttributes = attrMap => {\n const attrKeys = Array.from(attrMap.keys());\n attrKeys.forEach((attrKey: any) => {\n if (DIMENSION_PROPS.includes(attrKey)) {\n const cssObj = {},\n attrValue = attrMap.get(attrKey);\n attrMap.delete(attrKey);\n setDimensionProp(cssObj, attrKey, attrValue);\n Object.keys(cssObj).forEach(key => {\n if (cssObj[key]) {\n attrMap.set(key, cssObj[key]);\n }\n });\n }\n });\n};\n\n// replace <:svg:svg> -> <svg>, <:svg:*> -> <svg:*>\nconst getNodeName = name => name.replace(':svg:svg', 'svg').replace(':svg:', 'svg:');\n\nexport const processNode = (node, importCollector: (i: ImportDef[]) => void, providers?: Array<IProviderInfo>) => {\n const nodeDef = registry.get(node.name);\n\n let pre, post, template;\n\n if (nodeDef) {\n pre = nodeDef.pre || empty;\n post = nodeDef.post || empty;\n template = nodeDef.template || empty;\n }\n\n let markup = '';\n let attrMap;\n let requiredProviders;\n let shared;\n\n if (!providers) {\n providers = [];\n }\n\n const isElementType = node instanceof Element;\n\n if (isElementType) {\n let provideInfo: IProviderInfo;\n\n if (nodeDef) {\n requiredProviders = getRequiredProviders(nodeDef, providers, node.attrs);\n shared = new Map();\n template(node, shared, ...requiredProviders);\n }\n\n attrMap = getAttrMap(node.attrs);\n processDimensionAttributes(attrMap);\n\n const nodeName = getNodeName(node.name);\n\n if (nodeDef) {\n markup = (<any>pre)(attrMap, shared, ...requiredProviders);\n if (nodeDef.provide) {\n provideInfo = {\n nodeName: node.name,\n provide: isFunction(nodeDef.provide) ? nodeDef.provide(attrMap, shared, ...requiredProviders) : nodeDef.provide\n };\n // For table node, assigning parent provide map to the child, as child requires some parent provide attrs.\n if (node.name === 'wm-table') {\n const tableColNodeDefn = registry.get('wm-table-column');\n tableColNodeDefn[find(node.attrs, (el) => el.name === 'name').value + provideInfo.provide.get('table_reference')] = provideInfo.provide;\n registry.set('wm-table-column', tableColNodeDefn);\n }\n providers.push(provideInfo);\n }\n } else {\n markup = `<${nodeName} ${getAttrMarkup(attrMap)}>`;\n }\n\n node.children.forEach((child: Node | any) => {\n if(child.attrs) {\n let showInDeviceAttr, accessRolesAttr, deferLoadAttr, showAttr;\n child.attrs.forEach(function(attr){\n if (attr.name === 'showindevice') {\n showInDeviceAttr = attr;\n importCollector(WIDGET_IMPORTS.get(\"showindevice\"))\n } else if (attr.name === 'accessroles') {\n accessRolesAttr = attr;\n importCollector(WIDGET_IMPORTS.get('accessroles'));\n } else if (attr.name === 'deferload') {\n deferLoadAttr = attr;\n importCollector(WIDGET_IMPORTS.get('lazyload'));\n } else if (attr.name === 'show') {\n showAttr = attr;\n }\n });\n if((showInDeviceAttr && accessRolesAttr) || (showInDeviceAttr && deferLoadAttr) || (accessRolesAttr && deferLoadAttr)) {\n /* If more than one out of showindevice, accessroles and deferload exist for a widget, add ng-container wrappers to fix angular limitation\n of applying only one structural directive to an element.\n * */\n const noSpan = ({} as ParseSourceSpan);\n const showInDeviceContainer:any = showInDeviceAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const accessRolesContainer:any = accessRolesAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const deferLoadContainer:any = deferLoadAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n if (showInDeviceContainer) {\n showInDeviceContainer.attrs.push(showInDeviceAttr);\n }\n if (accessRolesContainer) {\n accessRolesContainer.attrs.push(accessRolesAttr);\n }\n if (deferLoadContainer) {\n deferLoadContainer.attrs.push(deferLoadAttr);\n if (showAttr) {\n deferLoadContainer.attrs.push(showAttr);\n }\n }\n remove(child.attrs, function (attr) {\n // @ts-ignore\n return attr.name === 'showindevice' || attr.name === 'accessroles' || attr.name === 'deferload'\n });\n let childContainer, parentContainer;\n if (showInDeviceAttr && accessRolesAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = accessRolesContainer;\n } else if (showInDeviceAttr && deferLoadAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = deferLoadContainer;\n } else if (accessRolesAttr && deferLoadAttr) {\n childContainer = deferLoadContainer;\n parentContainer = accessRolesContainer;\n }\n // wrap current node elements inside first ng-container(childContainer) and that container's elements inside another ng-container(parentContainer)\n childContainer.children = [child];\n parentContainer.children = [childContainer];\n // if all three directives exist, create another wrapper for third ng-container(grandParentContainer)\n if (showInDeviceAttr && accessRolesAttr && deferLoadAttr) {\n const grandParentContainer = deferLoadContainer;\n grandParentContainer.children = [parentContainer];\n child = grandParentContainer;\n } else {\n child = parentContainer;\n }\n\n }\n }\n return markup += processNode(child, importCollector, providers);\n });\n\n if (nodeDef) {\n if (provideInfo) {\n providers.splice(providers.indexOf(provideInfo), 1);\n }\n markup += (<any>post)(attrMap, shared, ...requiredProviders);\n } else {\n if (node.endSourceSpan && !getHtmlTagDefinition(node.name).isVoid) {\n markup += `</${nodeName}>`;\n }\n }\n } else if (node instanceof Text) {\n markup += node.value;\n } else if (node instanceof Comment) {\n if (!ignoreComments) {\n markup += node.value;\n }\n }\n importCollector(WIDGET_IMPORTS.get(node.name));\n if (nodeDef && nodeDef.imports) {\n let imports = [];\n if (typeof nodeDef.imports === 'function') {\n imports = nodeDef.imports(attrMap);\n } else {\n imports = nodeDef.imports;\n }\n imports.forEach( i => {\n importCollector(WIDGET_IMPORTS.get(i));\n });\n }\n return markup;\n};\n\nexport const transpile = (markup: string = '') => {\n if (!markup.length) {\n return;\n }\n let requiredWMComponents = [];\n const nodes = htmlParser.parse(markup, '');\n\n if (nodes.errors.length) {\n return;\n }\n\n let output = '';\n for (const node of nodes.rootNodes) {\n output += processNode(node, (imports: ImportDef[]) => {\n if (imports) {\n requiredWMComponents = requiredWMComponents.concat(imports);\n }\n });\n }\n requiredWMComponents = uniqWith(requiredWMComponents, isEqual);\n requiredWMComponents = sortBy(requiredWMComponents, ['from', 'name']);\n return {\n markup: output,\n requiredWMComponents: requiredWMComponents\n };\n};\n\nexport const register = (nodeName: string, nodeDefFn: () => IBuildTaskDef) => registry.set(nodeName, nodeDefFn());\n\nexport interface ImportDef {\n from: string;\n name: string;\n as?: string;\n forRoot?: boolean;\n platformType?: string;\n}\n\nexport interface IBuildTaskDef {\n requires?: string | Array<string>;\n template?: (node: Element | Text | Comment, shared?: Map<any, any>, ...requires: Array<Map<any, any>>) => void;\n pre: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n provide?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => Map<any, any>;\n post?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n imports?: string[] | ((attrs: Map<string, string>) => string[]);\n}\n\nexport const scopeComponentStyles = (componentName, componentType, styles = '') => {\n componentName = componentName.toLowerCase();\n const comments = {};\n let commentCount = 0;\n if (styles.startsWith('/*DISABLE_SCOPING*/')) {\n return styles;\n }\n styles = styles.replace(CSS_REGEX.COMMENTS_FORMAT, comment => {\n const key = `@comment${commentCount++}{`;\n comments[key] = comment;\n return key;\n });\n styles = styles.replace(CSS_REGEX.SELECTOR_FORMAT, (selector) => {\n if (!CSS_REGEX.SELECTOR_EXCLUDE_FORMAT.test(selector)) {\n const firstNonSpaceCharIndex = selector.match(/\\S/).index;\n let prefixSpaceCharSeq = '';\n if (firstNonSpaceCharIndex > 0) {\n prefixSpaceCharSeq = selector.substring(0, firstNonSpaceCharIndex);\n selector = selector.substring(firstNonSpaceCharIndex);\n }\n if (!selector.startsWith('/*') && selector.trim().length > 0) {\n // splits the selector by commas and we iterate over the array and add page level scoping and join it.\n selector = selector.split(',').map(s => {\n let prefix = ELE_PREFIX;\n s = s.trim();\n const spaceIndex = s.indexOf(' ');\n if (s.startsWith(ELE_PREFIX)) {\n if (spaceIndex > 0) {\n prefix = s.substring(0, spaceIndex);\n s = s.substring(spaceIndex + 1);\n } else {\n return s;\n }\n }\n\n if (componentType === 0 || componentType === 'PAGE') {\n s = `${prefix} app-page-${componentName} ${s}`;\n } else if (componentType === 1 || componentType === 'PREFAB') {\n s = `${prefix} app-prefab-${componentName} ${s}`;\n } else if (componentType === 2 || componentType === 'PARTIAL') {\n s = `${prefix} app-partial-${componentName} ${s}`;\n } else if(componentType === 3 || componentType === 'WIDGET'){\n s = `${prefix} app-custom-${componentName} ${s}`;\n }\n return s;\n }).join(',');\n }\n selector = prefixSpaceCharSeq + selector;\n }\n return selector;\n });\n for (const key in comments) {\n styles = styles.replace(key, comments[key]);\n }\n return styles;\n};\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}