@wavemaker/app-ng-runtime 11.4.0-next.28701 → 11.4.0-rc.5342
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.
- app-ng-runtime/build-task/basic/tree/tree.build.d.ts +1 -2
- app-ng-runtime/build-task/bundles/index.umd.js +7 -9
- app-ng-runtime/build-task/bundles/index.umd.js.map +1 -1
- app-ng-runtime/build-task/esm2015/basic/tree/tree.build.js +3 -4
- app-ng-runtime/build-task/esm2015/navigation/popover/popover.build.js +3 -3
- app-ng-runtime/build-task/fesm2015/index.js +7 -9
- app-ng-runtime/build-task/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/base/bundles/index.umd.js +7 -4
- app-ng-runtime/components/base/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/base/esm2015/utils/widget-utils.js +7 -4
- app-ng-runtime/components/base/esm2015/widgets/common/dialog/dialog.service.js +3 -3
- app-ng-runtime/components/base/fesm2015/index.js +8 -5
- app-ng-runtime/components/base/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/base/utils/widget-utils.d.ts +1 -1
- app-ng-runtime/components/basic/tree/bundles/index.umd.js +280 -256
- app-ng-runtime/components/basic/tree/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/basic/tree/esm2015/public_api.js +2 -2
- app-ng-runtime/components/basic/tree/esm2015/tree.component.js +322 -0
- app-ng-runtime/components/basic/tree/esm2015/tree.module.js +3 -3
- app-ng-runtime/components/basic/tree/fesm2015/index.js +260 -248
- app-ng-runtime/components/basic/tree/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/basic/tree/index.metadata.json +1 -1
- app-ng-runtime/components/basic/tree/public_api.d.ts +1 -1
- app-ng-runtime/components/basic/tree/tree.component.d.ts +34 -0
- app-ng-runtime/components/containers/tabs/bundles/index.umd.js +39 -23
- app-ng-runtime/components/containers/tabs/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/containers/tabs/esm2015/tab-pane/tab-pane.component.js +8 -1
- app-ng-runtime/components/containers/tabs/esm2015/tabs.animator.js +33 -13
- app-ng-runtime/components/containers/tabs/fesm2015/index.js +40 -13
- app-ng-runtime/components/containers/tabs/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/containers/tabs/tabs.animator.d.ts +5 -1
- app-ng-runtime/components/data/list/bundles/index.umd.js +51 -42
- app-ng-runtime/components/data/list/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/list/esm2015/list.component.js +51 -42
- app-ng-runtime/components/data/list/fesm2015/index.js +50 -41
- app-ng-runtime/components/data/list/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/list/index.metadata.json +1 -1
- app-ng-runtime/components/data/pagination/bundles/index.umd.js +21 -4
- app-ng-runtime/components/data/pagination/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/pagination/esm2015/pagination.component.js +22 -5
- app-ng-runtime/components/data/pagination/fesm2015/index.js +21 -4
- app-ng-runtime/components/data/pagination/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/pagination/index.metadata.json +1 -1
- app-ng-runtime/components/data/pagination/pagination.component.d.ts +1 -0
- app-ng-runtime/components/data/table/bundles/index.umd.js +7 -0
- app-ng-runtime/components/data/table/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/table/esm2015/table.component.js +8 -1
- app-ng-runtime/components/data/table/fesm2015/index.js +7 -0
- app-ng-runtime/components/data/table/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/table/index.metadata.json +1 -1
- app-ng-runtime/components/dialogs/default/base-dialog.d.ts +1 -0
- app-ng-runtime/components/dialogs/default/bundles/index.umd.js +13 -4
- app-ng-runtime/components/dialogs/default/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/dialogs/default/esm2015/base-dialog.js +14 -6
- app-ng-runtime/components/dialogs/default/fesm2015/index.js +13 -5
- app-ng-runtime/components/dialogs/default/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/dialogs/default/index.metadata.json +1 -1
- app-ng-runtime/components/input/epoch/bundles/index.umd.js +66 -29
- app-ng-runtime/components/input/epoch/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/input/epoch/date-time/date-time-picker.component.d.ts +1 -0
- app-ng-runtime/components/input/epoch/esm2015/base-date-time.component.js +43 -25
- app-ng-runtime/components/input/epoch/esm2015/date/date.component.js +3 -3
- app-ng-runtime/components/input/epoch/esm2015/date-time/date-time-picker.component.js +31 -11
- app-ng-runtime/components/input/epoch/esm2015/date-time/date-time.component.js +2 -2
- app-ng-runtime/components/input/epoch/fesm2015/index.js +75 -37
- app-ng-runtime/components/input/epoch/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/input/epoch/index.metadata.json +1 -1
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js +3 -4
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/navigation/popover/esm2015/popover.component.js +5 -6
- app-ng-runtime/components/navigation/popover/fesm2015/index.js +4 -5
- app-ng-runtime/components/navigation/popover/fesm2015/index.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/bundles/index.umd.js +24 -6
- app-ng-runtime/mobile/components/page/default/bundles/index.umd.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/esm2015/page.directive.js +20 -3
- app-ng-runtime/mobile/components/page/default/fesm2015/index.js +19 -2
- app-ng-runtime/mobile/components/page/default/fesm2015/index.js.map +1 -1
- app-ng-runtime/mobile/components/page/default/index.metadata.json +1 -1
- app-ng-runtime/mobile/components/page/default/page.directive.d.ts +4 -1
- app-ng-runtime/package.json +1 -1
- app-ng-runtime/scripts/datatable/datatable.js +23 -23
- app-ng-runtime/scripts/tree-keyboard-navigation/keyboard-navigation.js +251 -0
- app-ng-runtime/variables/bundles/index.umd.js +14 -4
- app-ng-runtime/variables/bundles/index.umd.js.map +1 -1
- app-ng-runtime/variables/esm2015/manager/action/notification-action.manager.js +5 -6
- app-ng-runtime/variables/esm2015/service/variables.service.js +8 -1
- app-ng-runtime/variables/fesm2015/index.js +11 -5
- app-ng-runtime/variables/fesm2015/index.js.map +1 -1
- app-ng-runtime/variables/index.metadata.json +1 -1
- app-ng-runtime/variables/service/variables.service.d.ts +4 -0
- app-ng-runtime/components/basic/tree/esm2015/tree.directive.js +0 -310
- app-ng-runtime/components/basic/tree/tree.directive.d.ts +0 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"CONSTANTS":{"hasCordova":{"__symbolic":"binop","operator":"!==","left":{"__symbolic":"index","expression":{"__symbolic":"reference","name":"window"},"index":"cordova"},"right":{"__symbolic":"reference","name":"undefined"}},"isStudioMode":false,"isRunMode":true,"XSRF_COOKIE_NAME":"wm_xsrf_token","DEFAULT_TIMER_DELAY":500,"WIDGET_DOESNT_EXIST":"The widget you're trying to navigate to doesn't exist on this page"},"VARIABLE_CONSTANTS":{"CATEGORY":{"MODEL":"wm.Variable","LIVE":"wm.LiveVariable","CRUD":"wm.CrudVariable","SERVICE":"wm.ServiceVariable","WEBSOCKET":"wm.WebSocketVariable","NAVIGATION":"wm.NavigationVariable","NOTIFICATION":"wm.NotificationVariable","TIMER":"wm.TimerVariable","LOGIN":"wm.LoginVariable","LOGOUT":"wm.LogoutVariable","DEVICE":"wm.DeviceVariable"},"EVENTS":["onBefore","onBeforeUpdate","onResult","onBeforeOpen","onOpen","onBeforeMessageSend","onMessageReceive","onProgress","onError","onBeforeDatasetReady","onCanUpdate","onClick","onHide","onOk","onCancel","onBeforeClose","onClose","onTimerFire","onSuccess","onOnline","onOffline"],"EVENT":{"CAN_UPDATE":"onCanUpdate","BEFORE":"onBefore","BEFORE_UPDATE":"onBeforeUpdate","PREPARE_SETDATA":"onBeforeDatasetReady","RESULT":"onResult","ERROR":"onError","ABORT":"onAbort","PROGRESS":"onProgress","CLICK":"onClick","HIDE":"onHide","OK":"onOk","CANCEL":"onCancel","CLOSE":"onClose","TIMER_FIRE":"onTimerFire","SUCCESS":"onSuccess","BEFORE_OPEN":"onBeforeOpen","OPEN":"onOpen","BEFORE_SEND":"onBeforeMessageSend","MESSAGE_RECEIVE":"onMessageReceive","BEFORE_CLOSE":"onBeforeClose","$quoted$":["CAN_UPDATE","BEFORE","BEFORE_UPDATE","PREPARE_SETDATA","RESULT","ERROR","ABORT","PROGRESS","CLICK","HIDE","OK","CANCEL","CLOSE","TIMER_FIRE","SUCCESS","BEFORE_OPEN","OPEN","BEFORE_SEND","MESSAGE_RECEIVE","BEFORE_CLOSE"]},"OWNER":{"APP":"App","PAGE":"Page","$quoted$":["APP","PAGE"]},"REST_SUPPORTED_SERVICES":["JavaService","SoapService","FeedService","RestService","SecurityServiceType","DataService","WebSocketService","OpenAPIService"],"PAGINATION_PARAMS":["page","size","sort"],"REST_SERVICE":{"BASE_PATH_KEY":"x-WM-BASE_PATH","RELATIVE_PATH_KEY":"x-WM-RELATIVE_PATH","OAUTH_PROVIDER_KEY":"x-WM-PROVIDER_ID","AUTH_HDR_KEY":"Authorization","SECURITY_DEFN":{"BASIC":"basic","OAUTH2":"oauth2","$quoted$":["BASIC","OAUTH2"]},"AUTH_TYPE":{"BASIC":"BASIC","OAUTH":"OAUTH2","NONE":"NONE","$quoted$":["BASIC","OAUTH","NONE"]},"CONTENT_TYPE_KEY":"x-WM-CONTENT_TYPE","ACCESSTOKEN_PLACEHOLDER":{"LEFT":"","RIGHT":".access_token","$quoted$":["LEFT","RIGHT"]},"ERR_TYPE":{"NO_ACCESSTOKEN":"missing_accesstoken","NO_CREDENTIALS":"no_credentials","METADATA_MISSING":"metadata_missing","CRUD_OPERATION_MISSING":"crud_operation_missing","USER_UNAUTHORISED":"user_unauthorised","REQUIRED_FIELD_MISSING":"required_field_missing"},"ERR_MSG":{"NO_ACCESSTOKEN":"Access token missing","NO_CREDENTIALS":"No credentials present","METADATA_MISSING":"Metadata missing for \"$variable\"","USER_UNAUTHORISED":"Unauthorized User","CRUD_OPERATION_MISSING":"Operation \"$operation\" not allowed for \"$variable\"","REQUIRED_FIELD_MISSING":"Required field(s) missing: \"${0}\""},"UNCLOAKED_HEADERS":["CONTENT-TYPE","ACCEPT","CONTENT-LENGTH","ACCEPT-ENCODING","ACCEPT-LANGUAGE"],"PREFIX":{"AUTH_HDR_VAL":{"BASIC":"Basic","OAUTH":"Bearer"},"CLOAK_HEADER_KEY":"X-WM-"},"$quoted$":["BASE_PATH_KEY","RELATIVE_PATH_KEY","OAUTH_PROVIDER_KEY","AUTH_HDR_KEY","SECURITY_DEFN","AUTH_TYPE","CONTENT_TYPE_KEY","ACCESSTOKEN_PLACEHOLDER"]},"SERVICE_TYPE":{"JAVA":"JavaService","REST":"RestService","SOAP":"SoapService","FEED":"FeedService","DATA":"DataService","SECURITY":"SecurityServiceType","WEBSOCKET":"WebSocketService","OPENAPI":"OpenAPIService"},"CONTROLLER_TYPE":{"QUERY":"QueryExecution","PROCEDURE":"ProcedureExecution"},"HTTP_STATUS_CODE":{"CORS_FAILURE":-1,"UNAUTHORIZED":401,"FORBIDDEN":403},"EXPORT_TYPES_MAP":{"EXCEL":".xlsx","CSV":".csv","$quoted$":["EXCEL","CSV"]},"DEFAULT_VAR":{"NOTIFICATION":"appNotification","$quoted$":["NOTIFICATION"]}},"WS_CONSTANTS":{"NON_BODY_HTTP_METHODS":["GET","HEAD"],"CONTENT_TYPES":{"FORM_URL_ENCODED":"application/x-www-form-urlencoded","MULTIPART_FORMDATA":"multipart/form-data","OCTET_STREAM":"application/octet-stream"}},"DB_CONSTANTS":{"DATABASE_MATCH_MODES":{"like":"LIKE","start":"STARTING_WITH","startignorecase":"STARTING_WITH_IGNORECASE","end":"ENDING_WITH","endignorecase":"ENDING_WITH_IGNORECASE","anywhere":"CONTAINING","anywhereignorecase":"CONTAINING_IGNORECASE","nowhere":"DOES_NOT_CONTAIN","nowhereignorecase":"DOES_NOT_CONTAIN_IGNORECASE","exact":"EQUALS","exactignorecase":"EQUALS_IGNORECASE","notequals":"NOT_EQUALS","notequalsignorecase":"NOT_EQUALS_IGNORECASE","between":"BETWEEN","in":"IN","notin":"NOTIN","lessthan":"LESS_THAN","lessthanequal":"LESS_THAN_OR_EQUALS","greaterthan":"GREATER_THAN","greaterthanequal":"GREATER_THAN_OR_EQUALS","null":"NULL","isnotnull":"IS_NOT_NULL","empty":"EMPTY","isnotempty":"IS_NOT_EMPTY","nullorempty":"NULL_OR_EMPTY","$quoted$":["like","start","startignorecase","end","endignorecase","anywhere","anywhereignorecase","nowhere","nowhereignorecase","exact","exactignorecase","notequals","notequalsignorecase","between","in","notin","lessthan","lessthanequal","greaterthan","greaterthanequal","null","isnotnull","empty","isnotempty","nullorempty"]},"DATABASE_EMPTY_MATCH_MODES":["NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"],"DATABASE_RANGE_MATCH_MODES":["IN","NOTIN","BETWEEN","LESS_THAN","LESS_THAN_OR_EQUALS","GREATER_THAN","GREATER_THAN_OR_EQUALS","NOT_EQUALS"],"DATABASE_NULL_EMPTY_MATCH":{"NULL":"NULL","IS_NOT_NULL":"IS_NOT_NULL","EMPTY":"NULL","IS_NOT_EMPTY":"IS_NOT_NULL","NULL_OR_EMPTY":"NULL","$quoted$":["NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"]},"DATABASE_MATCH_MODES_WITH_QUERY":{"LIKE":"${0} like ${1}","STARTING_WITH":"${0} like ${1}","STARTING_WITH_IGNORECASE":"${0} like ${1}","ENDING_WITH":"${0} like ${1}","ENDING_WITH_IGNORECASE":"${0} like ${1}","CONTAINING":"${0} like ${1}","CONTAINING_IGNORECASE":"${0} like ${1}","DOES_NOT_CONTAIN":"${0} not like ${1}","DOES_NOT_CONTAIN_IGNORECASE":"${0} not like ${1}","EQUALS":"${0}=${1}","EQUALS_IGNORECASE":"${0}=${1}","NOT_EQUALS":"${0}!=${1}","NOT_EQUALS_IGNORECASE":"${0}!=${1}","BETWEEN":"${0} between ${1}","IN":"${0} in ${1}","NOTIN":"${0} not in ${1}","LESS_THAN":"${0}<${1}","LESS_THAN_OR_EQUALS":"${0}<=${1}","GREATER_THAN":"${0}>${1}","GREATER_THAN_OR_EQUALS":"${0}>=${1}","NULL":"${0} is null","IS_NOT_NULL":"${0} is not null","EMPTY":"${0}=''","IS_NOT_EMPTY":"${0}<>''","NULL_OR_EMPTY":"${0} is null or ${0}=''","$quoted$":["LIKE","STARTING_WITH","STARTING_WITH_IGNORECASE","ENDING_WITH","ENDING_WITH_IGNORECASE","CONTAINING","CONTAINING_IGNORECASE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_IGNORECASE","EQUALS","EQUALS_IGNORECASE","NOT_EQUALS","NOT_EQUALS_IGNORECASE","BETWEEN","IN","NOTIN","LESS_THAN","LESS_THAN_OR_EQUALS","GREATER_THAN","GREATER_THAN_OR_EQUALS","NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"]},"DATABASE_STRING_MODES":["LIKE","STARTING_WITH","STARTING_WITH_IGNORECASE","ENDING_WITH","ENDING_WITH_IGNORECASE","CONTAINING","CONTAINING_IGNORECASE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_IGNORECASE","EQUALS","EQUALS_IGNORECASE","NOT_EQUALS","NOT_EQUALS_IGNORECASE"],"$quoted$":["DATABASE_MATCH_MODES","DATABASE_EMPTY_MATCH_MODES","DATABASE_RANGE_MATCH_MODES","DATABASE_NULL_EMPTY_MATCH","DATABASE_MATCH_MODES_WITH_QUERY","DATABASE_STRING_MODES"]},"SWAGGER_CONSTANTS":{"WM_DATA_JSON":"wm_data_json","WM_HTTP_JSON":"wm_httpRequestDetails"},"VARIABLE_URLS":{"DATABASE":{"searchTableData":{"url":"/:service/:dataModelName/:entityName/search?page=:page&size=:size&:sort","method":"POST"},"searchTableDataWithQuery":{"url":"/:service/:dataModelName/:entityName/filter?page=:page&size=:size&:sort","method":"POST","headers":{"Content-Type":"application/x-www-form-urlencoded","$quoted$":["Content-Type"]}},"readTableData":{"url":"/:service/:dataModelName/:entityName?page=:page&size=:size&:sort","method":"GET"},"insertTableData":{"url":"/:service/:dataModelName/:entityName","method":"POST"},"insertMultiPartTableData":{"url":"/:service/:dataModelName/:entityName","method":"POST","headers":{}},"updateTableData":{"url":"/:service/:dataModelName/:entityName/:id","method":"PUT"},"updateMultiPartTableData":{"url":"/:service/:dataModelName/:entityName/:id","method":"POST","headers":{}},"deleteTableData":{"url":"/:service/:dataModelName/:entityName/:id","method":"DELETE"},"updateCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id?:id","method":"PUT"},"periodUpdateCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id/periods?:id","method":"PUT"},"updateMultiPartCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id?:id","method":"POST","headers":{}},"deleteCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id?:id","method":"DELETE"},"periodDeleteCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id/periods?:id","method":"DELETE"},"getDistinctDataByFields":{"url":"/:service/:dataModelName/:entityName/aggregations?page=:page&size=:size&:sort","method":"POST"},"exportTableData":{"url":"/services/:dataModelName/:entityName/export?:sort","method":"POST"},"readTableRelatedData":{"url":"/:service/:dataModelName/:entityName/:id/:relatedFieldName?page=:page&size=:size&:sort","method":"GET"},"executeNamedQuery":{"url":"/:service/:dataModelName/queryExecutor/queries/:queryName?page=:page&size=:size&:queryParams","method":"GET"},"executeCustomQuery":{"url":"/:service/:dataModelName/queries/execute?page=:page&size=:size","method":"POST"},"executeAggregateQuery":{"url":"/services/:dataModelName/:entityName/aggregations?page=:page&size=:size&sort=:sort","method":"POST"},"executeNamedProcedure":{"url":"/:service/:dataModelName/procedureExecutor/procedure/execute/:procedureName?page=:page&size=:size&:procedureParams","method":"GET"},"countTableDataWithQuery":{"url":"/:service/:dataModelName/:entityName/count?:queryParams","method":"GET"}},"oauthConfiguration":{"getAuthorizationUrl":{"url":"services/oauth2/:providerId/authorizationUrl","method":"GET"}}},"VariableManagerFactory":{"__symbolic":"class","members":{},"statics":{"get":{"__symbolic":"function","parameters":["type"],"value":{"__symbolic":"if","condition":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Map"}},"member":"has"},"arguments":[{"__symbolic":"reference","name":"type"}]},"thenExpression":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Map"}},"member":"get"},"arguments":[{"__symbolic":"reference","name":"type"}]},"elseExpression":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Map"}},"member":"set"},"arguments":[{"__symbolic":"reference","name":"type"},{"__symbolic":"new","expression":{"__symbolic":"index","expression":{"Variable":{"__symbolic":"reference","name":"ɵa"},"Action":{"__symbolic":"reference","name":"ɵb"},"wm.NavigationVariable":{"__symbolic":"reference","name":"ɵc"},"wm.NotificationVariable":{"__symbolic":"reference","name":"ɵd"},"wm.LoginVariable":{"__symbolic":"reference","name":"ɵe"},"wm.LogoutVariable":{"__symbolic":"reference","name":"ɵf"},"wm.DeviceVariable":{"__symbolic":"reference","name":"DeviceVariableManager"},"wm.WebSocketVariable":{"__symbolic":"reference","name":"ɵg"},"$quoted$":["Variable","Action","wm.NavigationVariable","wm.NotificationVariable","wm.LoginVariable","wm.LogoutVariable","wm.DeviceVariable","wm.WebSocketVariable"]},"index":{"__symbolic":"reference","name":"type"}}}]},"member":"get"},"arguments":[{"__symbolic":"reference","name":"type"}]}}}}},"DeviceVariableManager":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"members":{"invoke":[{"__symbolic":"method"}],"registerService":[{"__symbolic":"method"}]}},"DeviceVariableService":{"__symbolic":"class","members":{"invoke":[{"__symbolic":"method"}]}},"IDeviceVariableOperation":{"__symbolic":"interface"},"VariablesService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":22,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@wm/core","name":"AbstractHttpService","line":26,"character":29},{"__symbolic":"reference","name":"MetadataService"},{"__symbolic":"reference","module":"@wm/core","name":"AbstractNavigationService","line":28,"character":35},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":29,"character":31},{"__symbolic":"reference","module":"@wm/core","name":"AbstractToasterService","line":30,"character":32},{"__symbolic":"reference","module":"@wm/oAuth","name":"OAuthService","line":31,"character":30},{"__symbolic":"reference","module":"@wm/security","name":"SecurityService","line":32,"character":33},{"__symbolic":"reference","module":"@wm/core","name":"AbstractDialogService","line":33,"character":31}]}],"bulkCancel":[{"__symbolic":"method"}],"triggerStartUpdate":[{"__symbolic":"method"}],"processBindExp":[{"__symbolic":"method"}],"processBinding":[{"__symbolic":"method"}],"isVariableSeperated":[{"__symbolic":"method"}],"getBindSourceTarget":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"registerDependency":[{"__symbolic":"method"}]}},"MetadataService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@wm/core","name":"AbstractHttpService","line":10,"character":31}]}],"isLoaded":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"getByOperationId":[{"__symbolic":"method"}],"getByProviderId":[{"__symbolic":"method"}],"getByCrudId":[{"__symbolic":"method"}]}},"appManager":{"__symbolic":"error","message":"Variable not initialized","line":8,"character":11,"module":"./util/variable/variables.utils"},"httpService":{"__symbolic":"error","message":"Variable not initialized","line":9,"character":11,"module":"./util/variable/variables.utils"},"metadataService":{"__symbolic":"error","message":"Variable not initialized","line":10,"character":11,"module":"./util/variable/variables.utils"},"navigationService":{"__symbolic":"error","message":"Variable not initialized","line":11,"character":11,"module":"./util/variable/variables.utils"},"routerService":{"__symbolic":"error","message":"Variable not initialized","line":12,"character":11,"module":"./util/variable/variables.utils"},"toasterService":{"__symbolic":"error","message":"Variable not initialized","line":13,"character":11,"module":"./util/variable/variables.utils"},"oauthService":{"__symbolic":"error","message":"Variable not initialized","line":14,"character":11,"module":"./util/variable/variables.utils"},"securityService":{"__symbolic":"error","message":"Variable not initialized","line":15,"character":11,"module":"./util/variable/variables.utils"},"dialogService":{"__symbolic":"error","message":"Variable not initialized","line":16,"character":11,"module":"./util/variable/variables.utils"},"setDependency":{"__symbolic":"error","message":"Lambda not supported","line":93,"character":29,"module":"./util/variable/variables.utils"},"initiateCallback":{"__symbolic":"error","message":"Lambda not supported","line":125,"character":32,"module":"./util/variable/variables.utils"},"processBinding":{"__symbolic":"error","message":"Lambda not supported","line":612,"character":30,"module":"./util/variable/variables.utils"},"simulateFileDownload":{"__symbolic":"error","message":"Lambda not supported","line":648,"character":36,"module":"./util/variable/variables.utils"},"setInput":{"__symbolic":"error","message":"Lambda not supported","line":677,"character":24,"module":"./util/variable/variables.utils"},"isFileUploadSupported":{"__symbolic":"error","message":"Lambda not supported","line":720,"character":37,"module":"./util/variable/variables.utils"},"getEvaluatedOrderBy":{"__symbolic":"error","message":"Lambda not supported","line":730,"character":35,"module":"./util/variable/variables.utils"},"formatExportExpression":{"__symbolic":"error","message":"Lambda not supported","line":760,"character":38,"module":"./util/variable/variables.utils"},"debounceVariableCall":{"__symbolic":"error","message":"Reference to a local symbol","line":22,"character":6,"context":{"name":"_invoke"},"module":"./util/variable/variables.utils"},"formatDate":{"__symbolic":"error","message":"Lambda not supported","line":799,"character":26,"module":"./util/variable/variables.utils"},"toastrModule":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-toastr","name":"ToastrModule","line":13,"character":54},"member":"forRoot"},"arguments":[{"maxOpened":1,"autoDismiss":true}]},"VariablesModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":17,"character":8},{"__symbolic":"reference","name":"toastrModule"},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":19,"character":8},{"__symbolic":"reference","module":"@wm/http","name":"HttpServiceModule","line":20,"character":8},{"__symbolic":"reference","module":"@wm/oAuth","name":"OAuthModule","line":21,"character":8},{"__symbolic":"reference","module":"@wm/security","name":"SecurityModule","line":22,"character":8}],"declarations":[]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"VariablesModule"},"providers":[{"__symbolic":"reference","name":"VariablesService"},{"__symbolic":"reference","name":"MetadataService"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":34,"character":16},{"provide":{"__symbolic":"reference","module":"@angular/common","name":"LocationStrategy","line":35,"character":26},"useClass":{"__symbolic":"reference","module":"@angular/common","name":"HashLocationStrategy","line":35,"character":54}}]}}}},"ɵa":{"__symbolic":"class","members":{"initBinding":[{"__symbolic":"method"}],"notifyInflight":[{"__symbolic":"method"}],"setRequestTrackId":[{"__symbolic":"method"}],"httpCall":[{"__symbolic":"method"}],"prepareCallbackOptions":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","members":{"initBinding":[{"__symbolic":"method"}],"notifyInflight":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"invoke":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"onToasterClick":[{"__symbolic":"method"}],"onToasterHide":[{"__symbolic":"method"}],"notifyViaToaster":[{"__symbolic":"method"}],"notifyViaDialog":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}],"getMessage":[{"__symbolic":"method"}],"setMessage":[{"__symbolic":"method"}],"getOkButtonText":[{"__symbolic":"method"}],"setOkButtonText":[{"__symbolic":"method"}],"getToasterDuration":[{"__symbolic":"method"}],"setToasterDuration":[{"__symbolic":"method"}],"getToasterClass":[{"__symbolic":"method"}],"setToasterClass":[{"__symbolic":"method"}],"getToasterPosition":[{"__symbolic":"method"}],"setToasterPosition":[{"__symbolic":"method"}],"getAlertType":[{"__symbolic":"method"}],"setAlertType":[{"__symbolic":"method"}],"getCancelButtonText":[{"__symbolic":"method"}],"setCancelButtonText":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"validate":[{"__symbolic":"method"}],"migrateOldParams":[{"__symbolic":"method"}],"redirectToAppBasePath":[{"__symbolic":"method"}],"login":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"logout":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"members":{"shouldAppendData":[{"__symbolic":"method"}],"shouldAppendLast":[{"__symbolic":"method"}],"getDataLimit":[{"__symbolic":"method"}],"getURL":[{"__symbolic":"method"}],"_onSocketMessage":[{"__symbolic":"method"}],"_onBeforeSend":[{"__symbolic":"method"}],"_onBeforeSocketClose":[{"__symbolic":"method"}],"_onBeforeSocketOpen":[{"__symbolic":"method"}],"_onSocketOpen":[{"__symbolic":"method"}],"freeSocket":[{"__symbolic":"method"}],"_onSocketClose":[{"__symbolic":"method"}],"_onSocketError":[{"__symbolic":"method"}],"getSocket":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"send":[{"__symbolic":"method"}]}}},"origins":{"CONSTANTS":"./constants/variables.constants","VARIABLE_CONSTANTS":"./constants/variables.constants","WS_CONSTANTS":"./constants/variables.constants","DB_CONSTANTS":"./constants/variables.constants","SWAGGER_CONSTANTS":"./constants/variables.constants","VARIABLE_URLS":"./constants/variables.constants","$rootScope":"@wavemaker/variables","VariableManagerFactory":"./factory/variable-manager.factory","DeviceVariableManager":"./manager/variable/device-variable-manager","DeviceVariableService":"./manager/variable/device-variable-service","IDeviceVariableOperation":"./manager/variable/device-variable-operation","VariablesService":"./service/variables.service","MetadataService":"./service/metadata-service/metadata.service","appManager":"./util/variable/variables.utils","httpService":"./util/variable/variables.utils","metadataService":"./util/variable/variables.utils","navigationService":"./util/variable/variables.utils","routerService":"./util/variable/variables.utils","toasterService":"./util/variable/variables.utils","oauthService":"./util/variable/variables.utils","securityService":"./util/variable/variables.utils","dialogService":"./util/variable/variables.utils","setDependency":"./util/variable/variables.utils","initiateCallback":"./util/variable/variables.utils","processBinding":"./util/variable/variables.utils","simulateFileDownload":"./util/variable/variables.utils","setInput":"./util/variable/variables.utils","isFileUploadSupported":"./util/variable/variables.utils","getEvaluatedOrderBy":"./util/variable/variables.utils","formatExportExpression":"./util/variable/variables.utils","debounceVariableCall":"./util/variable/variables.utils","formatDate":"./util/variable/variables.utils","toastrModule":"./variables.module","VariablesModule":"./variables.module","ɵa":"./manager/variable/base-variable.manager","ɵb":"./manager/action/base-action.manager","ɵc":"./manager/action/navigation-action.manager","ɵd":"./manager/action/notification-action.manager","ɵe":"./manager/action/login-action.manager","ɵf":"./manager/action/logout-action.manager","ɵg":"./manager/variable/web-socket-variable.manager"},"importAs":"@wm/variables"}
|
|
1
|
+
{"__symbolic":"module","version":4,"metadata":{"CONSTANTS":{"hasCordova":{"__symbolic":"binop","operator":"!==","left":{"__symbolic":"index","expression":{"__symbolic":"reference","name":"window"},"index":"cordova"},"right":{"__symbolic":"reference","name":"undefined"}},"isStudioMode":false,"isRunMode":true,"XSRF_COOKIE_NAME":"wm_xsrf_token","DEFAULT_TIMER_DELAY":500,"WIDGET_DOESNT_EXIST":"The widget you're trying to navigate to doesn't exist on this page"},"VARIABLE_CONSTANTS":{"CATEGORY":{"MODEL":"wm.Variable","LIVE":"wm.LiveVariable","CRUD":"wm.CrudVariable","SERVICE":"wm.ServiceVariable","WEBSOCKET":"wm.WebSocketVariable","NAVIGATION":"wm.NavigationVariable","NOTIFICATION":"wm.NotificationVariable","TIMER":"wm.TimerVariable","LOGIN":"wm.LoginVariable","LOGOUT":"wm.LogoutVariable","DEVICE":"wm.DeviceVariable"},"EVENTS":["onBefore","onBeforeUpdate","onResult","onBeforeOpen","onOpen","onBeforeMessageSend","onMessageReceive","onProgress","onError","onBeforeDatasetReady","onCanUpdate","onClick","onHide","onOk","onCancel","onBeforeClose","onClose","onTimerFire","onSuccess","onOnline","onOffline"],"EVENT":{"CAN_UPDATE":"onCanUpdate","BEFORE":"onBefore","BEFORE_UPDATE":"onBeforeUpdate","PREPARE_SETDATA":"onBeforeDatasetReady","RESULT":"onResult","ERROR":"onError","ABORT":"onAbort","PROGRESS":"onProgress","CLICK":"onClick","HIDE":"onHide","OK":"onOk","CANCEL":"onCancel","CLOSE":"onClose","TIMER_FIRE":"onTimerFire","SUCCESS":"onSuccess","BEFORE_OPEN":"onBeforeOpen","OPEN":"onOpen","BEFORE_SEND":"onBeforeMessageSend","MESSAGE_RECEIVE":"onMessageReceive","BEFORE_CLOSE":"onBeforeClose","$quoted$":["CAN_UPDATE","BEFORE","BEFORE_UPDATE","PREPARE_SETDATA","RESULT","ERROR","ABORT","PROGRESS","CLICK","HIDE","OK","CANCEL","CLOSE","TIMER_FIRE","SUCCESS","BEFORE_OPEN","OPEN","BEFORE_SEND","MESSAGE_RECEIVE","BEFORE_CLOSE"]},"OWNER":{"APP":"App","PAGE":"Page","$quoted$":["APP","PAGE"]},"REST_SUPPORTED_SERVICES":["JavaService","SoapService","FeedService","RestService","SecurityServiceType","DataService","WebSocketService","OpenAPIService"],"PAGINATION_PARAMS":["page","size","sort"],"REST_SERVICE":{"BASE_PATH_KEY":"x-WM-BASE_PATH","RELATIVE_PATH_KEY":"x-WM-RELATIVE_PATH","OAUTH_PROVIDER_KEY":"x-WM-PROVIDER_ID","AUTH_HDR_KEY":"Authorization","SECURITY_DEFN":{"BASIC":"basic","OAUTH2":"oauth2","$quoted$":["BASIC","OAUTH2"]},"AUTH_TYPE":{"BASIC":"BASIC","OAUTH":"OAUTH2","NONE":"NONE","$quoted$":["BASIC","OAUTH","NONE"]},"CONTENT_TYPE_KEY":"x-WM-CONTENT_TYPE","ACCESSTOKEN_PLACEHOLDER":{"LEFT":"","RIGHT":".access_token","$quoted$":["LEFT","RIGHT"]},"ERR_TYPE":{"NO_ACCESSTOKEN":"missing_accesstoken","NO_CREDENTIALS":"no_credentials","METADATA_MISSING":"metadata_missing","CRUD_OPERATION_MISSING":"crud_operation_missing","USER_UNAUTHORISED":"user_unauthorised","REQUIRED_FIELD_MISSING":"required_field_missing"},"ERR_MSG":{"NO_ACCESSTOKEN":"Access token missing","NO_CREDENTIALS":"No credentials present","METADATA_MISSING":"Metadata missing for \"$variable\"","USER_UNAUTHORISED":"Unauthorized User","CRUD_OPERATION_MISSING":"Operation \"$operation\" not allowed for \"$variable\"","REQUIRED_FIELD_MISSING":"Required field(s) missing: \"${0}\""},"UNCLOAKED_HEADERS":["CONTENT-TYPE","ACCEPT","CONTENT-LENGTH","ACCEPT-ENCODING","ACCEPT-LANGUAGE"],"PREFIX":{"AUTH_HDR_VAL":{"BASIC":"Basic","OAUTH":"Bearer"},"CLOAK_HEADER_KEY":"X-WM-"},"$quoted$":["BASE_PATH_KEY","RELATIVE_PATH_KEY","OAUTH_PROVIDER_KEY","AUTH_HDR_KEY","SECURITY_DEFN","AUTH_TYPE","CONTENT_TYPE_KEY","ACCESSTOKEN_PLACEHOLDER"]},"SERVICE_TYPE":{"JAVA":"JavaService","REST":"RestService","SOAP":"SoapService","FEED":"FeedService","DATA":"DataService","SECURITY":"SecurityServiceType","WEBSOCKET":"WebSocketService","OPENAPI":"OpenAPIService"},"CONTROLLER_TYPE":{"QUERY":"QueryExecution","PROCEDURE":"ProcedureExecution"},"HTTP_STATUS_CODE":{"CORS_FAILURE":-1,"UNAUTHORIZED":401,"FORBIDDEN":403},"EXPORT_TYPES_MAP":{"EXCEL":".xlsx","CSV":".csv","$quoted$":["EXCEL","CSV"]},"DEFAULT_VAR":{"NOTIFICATION":"appNotification","$quoted$":["NOTIFICATION"]}},"WS_CONSTANTS":{"NON_BODY_HTTP_METHODS":["GET","HEAD"],"CONTENT_TYPES":{"FORM_URL_ENCODED":"application/x-www-form-urlencoded","MULTIPART_FORMDATA":"multipart/form-data","OCTET_STREAM":"application/octet-stream"}},"DB_CONSTANTS":{"DATABASE_MATCH_MODES":{"like":"LIKE","start":"STARTING_WITH","startignorecase":"STARTING_WITH_IGNORECASE","end":"ENDING_WITH","endignorecase":"ENDING_WITH_IGNORECASE","anywhere":"CONTAINING","anywhereignorecase":"CONTAINING_IGNORECASE","nowhere":"DOES_NOT_CONTAIN","nowhereignorecase":"DOES_NOT_CONTAIN_IGNORECASE","exact":"EQUALS","exactignorecase":"EQUALS_IGNORECASE","notequals":"NOT_EQUALS","notequalsignorecase":"NOT_EQUALS_IGNORECASE","between":"BETWEEN","in":"IN","notin":"NOTIN","lessthan":"LESS_THAN","lessthanequal":"LESS_THAN_OR_EQUALS","greaterthan":"GREATER_THAN","greaterthanequal":"GREATER_THAN_OR_EQUALS","null":"NULL","isnotnull":"IS_NOT_NULL","empty":"EMPTY","isnotempty":"IS_NOT_EMPTY","nullorempty":"NULL_OR_EMPTY","$quoted$":["like","start","startignorecase","end","endignorecase","anywhere","anywhereignorecase","nowhere","nowhereignorecase","exact","exactignorecase","notequals","notequalsignorecase","between","in","notin","lessthan","lessthanequal","greaterthan","greaterthanequal","null","isnotnull","empty","isnotempty","nullorempty"]},"DATABASE_EMPTY_MATCH_MODES":["NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"],"DATABASE_RANGE_MATCH_MODES":["IN","NOTIN","BETWEEN","LESS_THAN","LESS_THAN_OR_EQUALS","GREATER_THAN","GREATER_THAN_OR_EQUALS","NOT_EQUALS"],"DATABASE_NULL_EMPTY_MATCH":{"NULL":"NULL","IS_NOT_NULL":"IS_NOT_NULL","EMPTY":"NULL","IS_NOT_EMPTY":"IS_NOT_NULL","NULL_OR_EMPTY":"NULL","$quoted$":["NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"]},"DATABASE_MATCH_MODES_WITH_QUERY":{"LIKE":"${0} like ${1}","STARTING_WITH":"${0} like ${1}","STARTING_WITH_IGNORECASE":"${0} like ${1}","ENDING_WITH":"${0} like ${1}","ENDING_WITH_IGNORECASE":"${0} like ${1}","CONTAINING":"${0} like ${1}","CONTAINING_IGNORECASE":"${0} like ${1}","DOES_NOT_CONTAIN":"${0} not like ${1}","DOES_NOT_CONTAIN_IGNORECASE":"${0} not like ${1}","EQUALS":"${0}=${1}","EQUALS_IGNORECASE":"${0}=${1}","NOT_EQUALS":"${0}!=${1}","NOT_EQUALS_IGNORECASE":"${0}!=${1}","BETWEEN":"${0} between ${1}","IN":"${0} in ${1}","NOTIN":"${0} not in ${1}","LESS_THAN":"${0}<${1}","LESS_THAN_OR_EQUALS":"${0}<=${1}","GREATER_THAN":"${0}>${1}","GREATER_THAN_OR_EQUALS":"${0}>=${1}","NULL":"${0} is null","IS_NOT_NULL":"${0} is not null","EMPTY":"${0}=''","IS_NOT_EMPTY":"${0}<>''","NULL_OR_EMPTY":"${0} is null or ${0}=''","$quoted$":["LIKE","STARTING_WITH","STARTING_WITH_IGNORECASE","ENDING_WITH","ENDING_WITH_IGNORECASE","CONTAINING","CONTAINING_IGNORECASE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_IGNORECASE","EQUALS","EQUALS_IGNORECASE","NOT_EQUALS","NOT_EQUALS_IGNORECASE","BETWEEN","IN","NOTIN","LESS_THAN","LESS_THAN_OR_EQUALS","GREATER_THAN","GREATER_THAN_OR_EQUALS","NULL","IS_NOT_NULL","EMPTY","IS_NOT_EMPTY","NULL_OR_EMPTY"]},"DATABASE_STRING_MODES":["LIKE","STARTING_WITH","STARTING_WITH_IGNORECASE","ENDING_WITH","ENDING_WITH_IGNORECASE","CONTAINING","CONTAINING_IGNORECASE","DOES_NOT_CONTAIN","DOES_NOT_CONTAIN_IGNORECASE","EQUALS","EQUALS_IGNORECASE","NOT_EQUALS","NOT_EQUALS_IGNORECASE"],"$quoted$":["DATABASE_MATCH_MODES","DATABASE_EMPTY_MATCH_MODES","DATABASE_RANGE_MATCH_MODES","DATABASE_NULL_EMPTY_MATCH","DATABASE_MATCH_MODES_WITH_QUERY","DATABASE_STRING_MODES"]},"SWAGGER_CONSTANTS":{"WM_DATA_JSON":"wm_data_json","WM_HTTP_JSON":"wm_httpRequestDetails"},"VARIABLE_URLS":{"DATABASE":{"searchTableData":{"url":"/:service/:dataModelName/:entityName/search?page=:page&size=:size&:sort","method":"POST"},"searchTableDataWithQuery":{"url":"/:service/:dataModelName/:entityName/filter?page=:page&size=:size&:sort","method":"POST","headers":{"Content-Type":"application/x-www-form-urlencoded","$quoted$":["Content-Type"]}},"readTableData":{"url":"/:service/:dataModelName/:entityName?page=:page&size=:size&:sort","method":"GET"},"insertTableData":{"url":"/:service/:dataModelName/:entityName","method":"POST"},"insertMultiPartTableData":{"url":"/:service/:dataModelName/:entityName","method":"POST","headers":{}},"updateTableData":{"url":"/:service/:dataModelName/:entityName/:id","method":"PUT"},"updateMultiPartTableData":{"url":"/:service/:dataModelName/:entityName/:id","method":"POST","headers":{}},"deleteTableData":{"url":"/:service/:dataModelName/:entityName/:id","method":"DELETE"},"updateCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id?:id","method":"PUT"},"periodUpdateCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id/periods?:id","method":"PUT"},"updateMultiPartCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id?:id","method":"POST","headers":{}},"deleteCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id?:id","method":"DELETE"},"periodDeleteCompositeTableData":{"url":"/:service/:dataModelName/:entityName/composite-id/periods?:id","method":"DELETE"},"getDistinctDataByFields":{"url":"/:service/:dataModelName/:entityName/aggregations?page=:page&size=:size&:sort","method":"POST"},"exportTableData":{"url":"/services/:dataModelName/:entityName/export?:sort","method":"POST"},"readTableRelatedData":{"url":"/:service/:dataModelName/:entityName/:id/:relatedFieldName?page=:page&size=:size&:sort","method":"GET"},"executeNamedQuery":{"url":"/:service/:dataModelName/queryExecutor/queries/:queryName?page=:page&size=:size&:queryParams","method":"GET"},"executeCustomQuery":{"url":"/:service/:dataModelName/queries/execute?page=:page&size=:size","method":"POST"},"executeAggregateQuery":{"url":"/services/:dataModelName/:entityName/aggregations?page=:page&size=:size&sort=:sort","method":"POST"},"executeNamedProcedure":{"url":"/:service/:dataModelName/procedureExecutor/procedure/execute/:procedureName?page=:page&size=:size&:procedureParams","method":"GET"},"countTableDataWithQuery":{"url":"/:service/:dataModelName/:entityName/count?:queryParams","method":"GET"}},"oauthConfiguration":{"getAuthorizationUrl":{"url":"services/oauth2/:providerId/authorizationUrl","method":"GET"}}},"VariableManagerFactory":{"__symbolic":"class","members":{},"statics":{"get":{"__symbolic":"function","parameters":["type"],"value":{"__symbolic":"if","condition":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Map"}},"member":"has"},"arguments":[{"__symbolic":"reference","name":"type"}]},"thenExpression":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Map"}},"member":"get"},"arguments":[{"__symbolic":"reference","name":"type"}]},"elseExpression":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Map"}},"member":"set"},"arguments":[{"__symbolic":"reference","name":"type"},{"__symbolic":"new","expression":{"__symbolic":"index","expression":{"Variable":{"__symbolic":"reference","name":"ɵa"},"Action":{"__symbolic":"reference","name":"ɵb"},"wm.NavigationVariable":{"__symbolic":"reference","name":"ɵc"},"wm.NotificationVariable":{"__symbolic":"reference","name":"ɵd"},"wm.LoginVariable":{"__symbolic":"reference","name":"ɵe"},"wm.LogoutVariable":{"__symbolic":"reference","name":"ɵf"},"wm.DeviceVariable":{"__symbolic":"reference","name":"DeviceVariableManager"},"wm.WebSocketVariable":{"__symbolic":"reference","name":"ɵg"},"$quoted$":["Variable","Action","wm.NavigationVariable","wm.NotificationVariable","wm.LoginVariable","wm.LogoutVariable","wm.DeviceVariable","wm.WebSocketVariable"]},"index":{"__symbolic":"reference","name":"type"}}}]},"member":"get"},"arguments":[{"__symbolic":"reference","name":"type"}]}}}}},"DeviceVariableManager":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"members":{"invoke":[{"__symbolic":"method"}],"registerService":[{"__symbolic":"method"}]}},"DeviceVariableService":{"__symbolic":"class","members":{"invoke":[{"__symbolic":"method"}]}},"IDeviceVariableOperation":{"__symbolic":"interface"},"Formatter":{"__symbolic":"class","members":{"format":[{"__symbolic":"method"}]}},"VariablesService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":30,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@wm/core","name":"AbstractHttpService","line":34,"character":29},{"__symbolic":"reference","name":"MetadataService"},{"__symbolic":"reference","module":"@wm/core","name":"AbstractNavigationService","line":36,"character":35},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":37,"character":31},{"__symbolic":"reference","module":"@wm/core","name":"AbstractToasterService","line":38,"character":32},{"__symbolic":"reference","module":"@wm/oAuth","name":"OAuthService","line":39,"character":30},{"__symbolic":"reference","module":"@wm/security","name":"SecurityService","line":40,"character":33},{"__symbolic":"reference","module":"@wm/core","name":"AbstractDialogService","line":41,"character":31}]}],"bulkCancel":[{"__symbolic":"method"}],"triggerStartUpdate":[{"__symbolic":"method"}],"processBindExp":[{"__symbolic":"method"}],"processBinding":[{"__symbolic":"method"}],"isVariableSeperated":[{"__symbolic":"method"}],"getBindSourceTarget":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"registerDependency":[{"__symbolic":"method"}]}},"MetadataService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@wm/core","name":"AbstractHttpService","line":10,"character":31}]}],"isLoaded":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"getByOperationId":[{"__symbolic":"method"}],"getByProviderId":[{"__symbolic":"method"}],"getByCrudId":[{"__symbolic":"method"}]}},"appManager":{"__symbolic":"error","message":"Variable not initialized","line":8,"character":11,"module":"./util/variable/variables.utils"},"httpService":{"__symbolic":"error","message":"Variable not initialized","line":9,"character":11,"module":"./util/variable/variables.utils"},"metadataService":{"__symbolic":"error","message":"Variable not initialized","line":10,"character":11,"module":"./util/variable/variables.utils"},"navigationService":{"__symbolic":"error","message":"Variable not initialized","line":11,"character":11,"module":"./util/variable/variables.utils"},"routerService":{"__symbolic":"error","message":"Variable not initialized","line":12,"character":11,"module":"./util/variable/variables.utils"},"toasterService":{"__symbolic":"error","message":"Variable not initialized","line":13,"character":11,"module":"./util/variable/variables.utils"},"oauthService":{"__symbolic":"error","message":"Variable not initialized","line":14,"character":11,"module":"./util/variable/variables.utils"},"securityService":{"__symbolic":"error","message":"Variable not initialized","line":15,"character":11,"module":"./util/variable/variables.utils"},"dialogService":{"__symbolic":"error","message":"Variable not initialized","line":16,"character":11,"module":"./util/variable/variables.utils"},"setDependency":{"__symbolic":"error","message":"Lambda not supported","line":93,"character":29,"module":"./util/variable/variables.utils"},"initiateCallback":{"__symbolic":"error","message":"Lambda not supported","line":125,"character":32,"module":"./util/variable/variables.utils"},"processBinding":{"__symbolic":"error","message":"Lambda not supported","line":612,"character":30,"module":"./util/variable/variables.utils"},"simulateFileDownload":{"__symbolic":"error","message":"Lambda not supported","line":648,"character":36,"module":"./util/variable/variables.utils"},"setInput":{"__symbolic":"error","message":"Lambda not supported","line":677,"character":24,"module":"./util/variable/variables.utils"},"isFileUploadSupported":{"__symbolic":"error","message":"Lambda not supported","line":720,"character":37,"module":"./util/variable/variables.utils"},"getEvaluatedOrderBy":{"__symbolic":"error","message":"Lambda not supported","line":730,"character":35,"module":"./util/variable/variables.utils"},"formatExportExpression":{"__symbolic":"error","message":"Lambda not supported","line":760,"character":38,"module":"./util/variable/variables.utils"},"debounceVariableCall":{"__symbolic":"error","message":"Reference to a local symbol","line":22,"character":6,"context":{"name":"_invoke"},"module":"./util/variable/variables.utils"},"formatDate":{"__symbolic":"error","message":"Lambda not supported","line":799,"character":26,"module":"./util/variable/variables.utils"},"toastrModule":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-toastr","name":"ToastrModule","line":13,"character":54},"member":"forRoot"},"arguments":[{"maxOpened":1,"autoDismiss":true}]},"VariablesModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":17,"character":8},{"__symbolic":"reference","name":"toastrModule"},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":19,"character":8},{"__symbolic":"reference","module":"@wm/http","name":"HttpServiceModule","line":20,"character":8},{"__symbolic":"reference","module":"@wm/oAuth","name":"OAuthModule","line":21,"character":8},{"__symbolic":"reference","module":"@wm/security","name":"SecurityModule","line":22,"character":8}],"declarations":[]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"VariablesModule"},"providers":[{"__symbolic":"reference","name":"VariablesService"},{"__symbolic":"reference","name":"MetadataService"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":34,"character":16},{"provide":{"__symbolic":"reference","module":"@angular/common","name":"LocationStrategy","line":35,"character":26},"useClass":{"__symbolic":"reference","module":"@angular/common","name":"HashLocationStrategy","line":35,"character":54}}]}}}},"ɵa":{"__symbolic":"class","members":{"initBinding":[{"__symbolic":"method"}],"notifyInflight":[{"__symbolic":"method"}],"setRequestTrackId":[{"__symbolic":"method"}],"httpCall":[{"__symbolic":"method"}],"prepareCallbackOptions":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","members":{"initBinding":[{"__symbolic":"method"}],"notifyInflight":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"invoke":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"onToasterClick":[{"__symbolic":"method"}],"onToasterHide":[{"__symbolic":"method"}],"notifyViaToaster":[{"__symbolic":"method"}],"notifyViaDialog":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}],"getMessage":[{"__symbolic":"method"}],"setMessage":[{"__symbolic":"method"}],"getOkButtonText":[{"__symbolic":"method"}],"setOkButtonText":[{"__symbolic":"method"}],"getToasterDuration":[{"__symbolic":"method"}],"setToasterDuration":[{"__symbolic":"method"}],"getToasterClass":[{"__symbolic":"method"}],"setToasterClass":[{"__symbolic":"method"}],"getToasterPosition":[{"__symbolic":"method"}],"setToasterPosition":[{"__symbolic":"method"}],"getAlertType":[{"__symbolic":"method"}],"setAlertType":[{"__symbolic":"method"}],"getCancelButtonText":[{"__symbolic":"method"}],"setCancelButtonText":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"validate":[{"__symbolic":"method"}],"migrateOldParams":[{"__symbolic":"method"}],"redirectToAppBasePath":[{"__symbolic":"method"}],"login":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵb"},"members":{"logout":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"members":{"shouldAppendData":[{"__symbolic":"method"}],"shouldAppendLast":[{"__symbolic":"method"}],"getDataLimit":[{"__symbolic":"method"}],"getURL":[{"__symbolic":"method"}],"_onSocketMessage":[{"__symbolic":"method"}],"_onBeforeSend":[{"__symbolic":"method"}],"_onBeforeSocketClose":[{"__symbolic":"method"}],"_onBeforeSocketOpen":[{"__symbolic":"method"}],"_onSocketOpen":[{"__symbolic":"method"}],"freeSocket":[{"__symbolic":"method"}],"_onSocketClose":[{"__symbolic":"method"}],"_onSocketError":[{"__symbolic":"method"}],"getSocket":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"send":[{"__symbolic":"method"}]}}},"origins":{"CONSTANTS":"./constants/variables.constants","VARIABLE_CONSTANTS":"./constants/variables.constants","WS_CONSTANTS":"./constants/variables.constants","DB_CONSTANTS":"./constants/variables.constants","SWAGGER_CONSTANTS":"./constants/variables.constants","VARIABLE_URLS":"./constants/variables.constants","$rootScope":"@wavemaker/variables","VariableManagerFactory":"./factory/variable-manager.factory","DeviceVariableManager":"./manager/variable/device-variable-manager","DeviceVariableService":"./manager/variable/device-variable-service","IDeviceVariableOperation":"./manager/variable/device-variable-operation","Formatter":"./service/variables.service","VariablesService":"./service/variables.service","MetadataService":"./service/metadata-service/metadata.service","appManager":"./util/variable/variables.utils","httpService":"./util/variable/variables.utils","metadataService":"./util/variable/variables.utils","navigationService":"./util/variable/variables.utils","routerService":"./util/variable/variables.utils","toasterService":"./util/variable/variables.utils","oauthService":"./util/variable/variables.utils","securityService":"./util/variable/variables.utils","dialogService":"./util/variable/variables.utils","setDependency":"./util/variable/variables.utils","initiateCallback":"./util/variable/variables.utils","processBinding":"./util/variable/variables.utils","simulateFileDownload":"./util/variable/variables.utils","setInput":"./util/variable/variables.utils","isFileUploadSupported":"./util/variable/variables.utils","getEvaluatedOrderBy":"./util/variable/variables.utils","formatExportExpression":"./util/variable/variables.utils","debounceVariableCall":"./util/variable/variables.utils","formatDate":"./util/variable/variables.utils","toastrModule":"./variables.module","VariablesModule":"./variables.module","ɵa":"./manager/variable/base-variable.manager","ɵb":"./manager/action/base-action.manager","ɵc":"./manager/action/navigation-action.manager","ɵd":"./manager/action/notification-action.manager","ɵe":"./manager/action/login-action.manager","ɵf":"./manager/action/logout-action.manager","ɵg":"./manager/variable/web-socket-variable.manager"},"importAs":"@wm/variables"}
|
|
@@ -3,6 +3,10 @@ import { AbstractDialogService, AbstractHttpService, AbstractNavigationService,
|
|
|
3
3
|
import { OAuthService } from '@wm/oAuth';
|
|
4
4
|
import { SecurityService } from '@wm/security';
|
|
5
5
|
import { MetadataService } from './metadata-service/metadata.service';
|
|
6
|
+
import { DateFormatter } from '@wavemaker/variables';
|
|
7
|
+
export declare class Formatter implements DateFormatter {
|
|
8
|
+
format(value: any, format: any): any;
|
|
9
|
+
}
|
|
6
10
|
export declare class VariablesService {
|
|
7
11
|
private httpService;
|
|
8
12
|
private metadataService;
|
|
@@ -1,310 +0,0 @@
|
|
|
1
|
-
import { Attribute, Directive, Injector } from '@angular/core';
|
|
2
|
-
import { $appDigest, $parseEvent, $parseExpr, getClonedObject } from '@wm/core';
|
|
3
|
-
import { APPLY_STYLES_TYPE, getEvaluatedData, getOrderedDataset, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';
|
|
4
|
-
import { registerProps } from './tree.props';
|
|
5
|
-
const defaultTreeIconClass = 'plus-minus';
|
|
6
|
-
const ICON_CLASSES = {
|
|
7
|
-
'folder': {
|
|
8
|
-
'expanded': 'wi-folder-open',
|
|
9
|
-
'collapsed': 'wi-folder'
|
|
10
|
-
},
|
|
11
|
-
'circle-plus-minus': {
|
|
12
|
-
'expanded': 'wi-remove-circle-outline',
|
|
13
|
-
'collapsed': 'wi-add-circle-outline'
|
|
14
|
-
},
|
|
15
|
-
'chevron': {
|
|
16
|
-
'expanded': 'wi-keyboard-arrow-down',
|
|
17
|
-
'collapsed': 'wi-keyboard-arrow-right'
|
|
18
|
-
},
|
|
19
|
-
'menu': {
|
|
20
|
-
'expanded': 'wi-arrow-down',
|
|
21
|
-
'collapsed': 'wi-arrow-right'
|
|
22
|
-
},
|
|
23
|
-
'triangle': {
|
|
24
|
-
'expanded': 'wi-arrow-drop-down-circle',
|
|
25
|
-
'collapsed': 'wi-play-circle-filled'
|
|
26
|
-
},
|
|
27
|
-
'expand-collapse': {
|
|
28
|
-
'expanded': 'wi-expand-less',
|
|
29
|
-
'collapsed': 'wi-expand-more'
|
|
30
|
-
},
|
|
31
|
-
'plus-minus': {
|
|
32
|
-
'expanded': 'wi-minus',
|
|
33
|
-
'collapsed': 'wi-plus'
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
const WIDGET_INFO = { widgetType: 'wm-tree', hostClass: 'app-tree' };
|
|
37
|
-
export class TreeDirective extends StylableComponent {
|
|
38
|
-
constructor(inj, binddatavalue, bindnodelabel, bindnodeicon, bindnodechildren, bindnodeid) {
|
|
39
|
-
super(inj, WIDGET_INFO);
|
|
40
|
-
this.binddatavalue = binddatavalue;
|
|
41
|
-
this.bindnodelabel = bindnodelabel;
|
|
42
|
-
this.bindnodeicon = bindnodeicon;
|
|
43
|
-
this.bindnodechildren = bindnodechildren;
|
|
44
|
-
this.bindnodeid = bindnodeid;
|
|
45
|
-
styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER);
|
|
46
|
-
this.bindEvents();
|
|
47
|
-
}
|
|
48
|
-
onPropertyChange(key, nv, ov) {
|
|
49
|
-
switch (key) {
|
|
50
|
-
case 'dataset':
|
|
51
|
-
this.nodes = this.getNodes(nv);
|
|
52
|
-
this._selectNode = undefined;
|
|
53
|
-
this.renderTree();
|
|
54
|
-
break;
|
|
55
|
-
case 'nodeicon':
|
|
56
|
-
case 'nodelabel':
|
|
57
|
-
case 'nodechildren':
|
|
58
|
-
case 'orderby':
|
|
59
|
-
this.renderTree();
|
|
60
|
-
break;
|
|
61
|
-
case 'treeicons':
|
|
62
|
-
this.changeTreeIcons(nv, ov);
|
|
63
|
-
break;
|
|
64
|
-
case 'datavalue':
|
|
65
|
-
this.selectById(nv);
|
|
66
|
-
break;
|
|
67
|
-
default:
|
|
68
|
-
super.onPropertyChange(key, nv, ov);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
constructNodes(nodes, parent, levels, deep, _evalDataValue) {
|
|
72
|
-
const $ul = $('<ul></ul>');
|
|
73
|
-
const _iconClses = ICON_CLASSES[this.treeicons || defaultTreeIconClass];
|
|
74
|
-
const _expr = (this.binddatavalue || this.datavalue);
|
|
75
|
-
let _iconCls, _cls;
|
|
76
|
-
_cls = levels > 0 ? ' expanded ' : ' collapsed ';
|
|
77
|
-
_iconCls = _cls + (levels > 0 ? _iconClses.expanded : _iconClses.collapsed);
|
|
78
|
-
deep = deep || 0;
|
|
79
|
-
parent.append($ul);
|
|
80
|
-
nodes.forEach((node, idx) => {
|
|
81
|
-
const $li = $('<li></li>'), $iconNode = $('<i></i>'), nodeLabel = getEvaluatedData(node, { field: this.nodelabel, bindExpression: this.bindnodelabel }, this.viewParent) || node.label, nodeIcon = getEvaluatedData(node, { field: this.nodeicon, bindExpression: this.bindnodeicon }, this.viewParent) || node.icon, nodeChildren = getEvaluatedData(node, { field: this.nodechildren, bindExpression: this.bindnodechildren }, this.viewParent) || node.children;
|
|
82
|
-
let nodeIdValue = getEvaluatedData(node, { field: this.nodeid, bindExpression: this.bindnodeid }, this.viewParent);
|
|
83
|
-
if (nodeIdValue === undefined) {
|
|
84
|
-
nodeIdValue = node.children;
|
|
85
|
-
}
|
|
86
|
-
let isNodeMatched = false, expandCollapseIcon;
|
|
87
|
-
$li.data('nodedata', node)
|
|
88
|
-
.append($iconNode)
|
|
89
|
-
.append(`<span class="title">${nodeLabel}</span>`)
|
|
90
|
-
.appendTo($ul);
|
|
91
|
-
// if datavalue(ie, expr) is provided select the tree node accordingly
|
|
92
|
-
// if datavalue === 'FirstNode' -- select the FirstNode at level 0
|
|
93
|
-
// if datavalue === 'LastNode' -- select the LastNode at level 0
|
|
94
|
-
// if datavalue is a bind expression evaluate the expression for each node of the tree till the condition is satisfied.
|
|
95
|
-
// if node identifier is present then verify the datavalue is bound expr or static value and compare with the node model
|
|
96
|
-
if (this.bindnodeid || this.nodeid) {
|
|
97
|
-
isNodeMatched = this.binddatavalue ? nodeIdValue === _evalDataValue : nodeIdValue === _expr;
|
|
98
|
-
if (nodeIdValue !== undefined) {
|
|
99
|
-
$li.attr('id', nodeIdValue);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
else if (this.binddatavalue) { // evaluate the expression only if it is bound (useExpression)
|
|
103
|
-
isNodeMatched = !!$parseExpr(_expr)(this, node);
|
|
104
|
-
}
|
|
105
|
-
// Perform LastNode check only at level 0.(ie, deep = 0);
|
|
106
|
-
if (!this._selectNode) {
|
|
107
|
-
if ((_expr === 'FirstNode' && idx === 0)
|
|
108
|
-
|| (!deep && _expr === 'LastNode' && idx === nodes.length - 1)
|
|
109
|
-
|| isNodeMatched) {
|
|
110
|
-
// save a reference of the node to be selected in `_selectNode`
|
|
111
|
-
this._selectNode = $li;
|
|
112
|
-
this.datavalue = nodeIdValue;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
if (nodeIcon) {
|
|
116
|
-
$iconNode.addClass(nodeIcon);
|
|
117
|
-
}
|
|
118
|
-
if (nodeChildren && nodeChildren.length) { // parent node
|
|
119
|
-
$li.addClass(`parent-node ${_cls}`);
|
|
120
|
-
expandCollapseIcon = $(`<i class="wi ${_iconCls}"></i>`);
|
|
121
|
-
if (nodeIcon) {
|
|
122
|
-
$iconNode.addClass(nodeIcon);
|
|
123
|
-
}
|
|
124
|
-
$li.prepend(expandCollapseIcon);
|
|
125
|
-
this.constructNodes(nodeChildren, $li, levels - 1, deep + 1, _evalDataValue);
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
if (!nodeIcon) {
|
|
129
|
-
$iconNode.addClass('leaf-node');
|
|
130
|
-
}
|
|
131
|
-
$li.addClass('leaf-node');
|
|
132
|
-
}
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
getNodesFromString(value) {
|
|
136
|
-
return value.split(',').map((item) => {
|
|
137
|
-
return {
|
|
138
|
-
'label': item && item.trim()
|
|
139
|
-
};
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
getNodes(newVal) {
|
|
143
|
-
let nodes;
|
|
144
|
-
if (_.isString(newVal) && !_.isEmpty(newVal)) {
|
|
145
|
-
newVal = newVal.trim();
|
|
146
|
-
if (newVal) {
|
|
147
|
-
nodes = this.getNodesFromString(newVal);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
else if (_.isArray(newVal)) {
|
|
151
|
-
newVal = getOrderedDataset(newVal, this.orderby);
|
|
152
|
-
nodes = newVal;
|
|
153
|
-
}
|
|
154
|
-
else if (_.isObject(newVal)) {
|
|
155
|
-
nodes = [newVal];
|
|
156
|
-
}
|
|
157
|
-
return nodes;
|
|
158
|
-
}
|
|
159
|
-
changeTreeIcons(nv, ov) {
|
|
160
|
-
const $el = $(this.nativeElement);
|
|
161
|
-
nv = nv || defaultTreeIconClass;
|
|
162
|
-
ov = ov || defaultTreeIconClass;
|
|
163
|
-
$el.find('i.expanded').removeClass(ICON_CLASSES[ov].expanded).addClass(ICON_CLASSES[nv].expanded);
|
|
164
|
-
$el.find('i.collapsed').removeClass(ICON_CLASSES[ov].collapsed).addClass(ICON_CLASSES[nv].collapsed);
|
|
165
|
-
}
|
|
166
|
-
toggleExpandCollapseNode($event, $i, $li) {
|
|
167
|
-
const treeIcons = ICON_CLASSES[this.treeicons || defaultTreeIconClass];
|
|
168
|
-
const $liPath = this.findSelectedNodeParent($li);
|
|
169
|
-
let path = '';
|
|
170
|
-
// construct the path of the node
|
|
171
|
-
$liPath
|
|
172
|
-
.each((i, el) => {
|
|
173
|
-
const current = $(el).children('.title').text();
|
|
174
|
-
path = `/${current + path}`;
|
|
175
|
-
});
|
|
176
|
-
const eventParams = {
|
|
177
|
-
'$event': $event,
|
|
178
|
-
"$item": $li.data('nodedata'),
|
|
179
|
-
"$path": path
|
|
180
|
-
};
|
|
181
|
-
if ($i.hasClass('collapsed')) {
|
|
182
|
-
$i.removeClass(`collapsed ${treeIcons.collapsed}`).addClass(`expanded ${treeIcons.expanded}`);
|
|
183
|
-
$li.removeClass('collapsed').addClass('expanded');
|
|
184
|
-
this.invokeEventCallback('expand', eventParams);
|
|
185
|
-
}
|
|
186
|
-
else if ($i.hasClass('expanded')) {
|
|
187
|
-
$i.removeClass(`expanded ${treeIcons.expanded}`).addClass(`collapsed ${treeIcons.collapsed}`);
|
|
188
|
-
$li.removeClass('expanded').addClass('collapsed');
|
|
189
|
-
this.invokeEventCallback('collapse', eventParams);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
renderTree(forceRender) {
|
|
193
|
-
let docFrag, $li, $liPath, data, path = '';
|
|
194
|
-
const levels = +this.nativeElement.getAttribute('levels') || 0, $el = $(this.nativeElement);
|
|
195
|
-
$el.empty();
|
|
196
|
-
if (forceRender) {
|
|
197
|
-
this._selectNode = undefined;
|
|
198
|
-
}
|
|
199
|
-
if (this.nodes && this.nodes.length) {
|
|
200
|
-
docFrag = document.createDocumentFragment();
|
|
201
|
-
this.constructNodes(this.nodes, $(docFrag), levels, 0, this.datavalue);
|
|
202
|
-
$el.append(docFrag);
|
|
203
|
-
}
|
|
204
|
-
if (this._selectNode) {
|
|
205
|
-
$li = this._selectNode;
|
|
206
|
-
$li.addClass('selected');
|
|
207
|
-
data = $li.data('nodedata');
|
|
208
|
-
$liPath = this.findSelectedNodeParent($li);
|
|
209
|
-
if (!$liPath.length) {
|
|
210
|
-
$liPath = $li;
|
|
211
|
-
}
|
|
212
|
-
$liPath
|
|
213
|
-
.each((i, el) => {
|
|
214
|
-
const $current = $(el), $i = $current.children('i.collapsed'), $title = $current.children('.title');
|
|
215
|
-
this.toggleExpandCollapseNode(undefined, $i, $current);
|
|
216
|
-
path = `/${$title.text() + path}`;
|
|
217
|
-
});
|
|
218
|
-
this.selecteditem = getClonedObject(data) || {};
|
|
219
|
-
this.selecteditem.path = path;
|
|
220
|
-
this.invokeEventCallback('select', { $event: undefined, $item: data, $path: path });
|
|
221
|
-
$appDigest();
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
selectNode(evt, value) {
|
|
225
|
-
const target = evt && $(evt.target), $el = $(this.nativeElement), $li = _.isObject(value) ? value : $el.find(`li[id="${value}"]`).first();
|
|
226
|
-
let data, path = '', $liPath, nodeAction;
|
|
227
|
-
$el.find('.selected').removeClass('selected');
|
|
228
|
-
if (!$li.length) {
|
|
229
|
-
return;
|
|
230
|
-
}
|
|
231
|
-
$li.addClass('selected');
|
|
232
|
-
data = $li.data('nodedata');
|
|
233
|
-
nodeAction = data[this.nodeaction || 'action'];
|
|
234
|
-
// if the selectNode is initiated by click event then use the nativeElement target from event
|
|
235
|
-
$liPath = target ? target.parents('.app-tree li') : this.findSelectedNodeParent($li);
|
|
236
|
-
// construct the path of the node
|
|
237
|
-
$liPath
|
|
238
|
-
.each((i, el) => {
|
|
239
|
-
const current = $(el).children('.title').text();
|
|
240
|
-
path = `/${current + path}`;
|
|
241
|
-
});
|
|
242
|
-
// expand the current node till the viewParent level which is collapsed
|
|
243
|
-
$li.parentsUntil($el, 'li.parent-node.collapsed')
|
|
244
|
-
.each((index, el) => {
|
|
245
|
-
const $current = $(el), $i = $current.children('i.collapsed');
|
|
246
|
-
this.toggleExpandCollapseNode(undefined, $i, $current);
|
|
247
|
-
});
|
|
248
|
-
this.selecteditem = getClonedObject(data) || {};
|
|
249
|
-
this.selecteditem.path = path;
|
|
250
|
-
if (target) {
|
|
251
|
-
if (this.nodeid || this.bindnodeid) {
|
|
252
|
-
this.datavalue = getEvaluatedData(data, { field: this.nodeid, bindExpression: this.bindnodeid }, this.viewParent);
|
|
253
|
-
}
|
|
254
|
-
else {
|
|
255
|
-
this.datavalue = getClonedObject(data) || {};
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
else {
|
|
259
|
-
this.datavalue = value;
|
|
260
|
-
}
|
|
261
|
-
//[Todo-CSP]: this data will be dynamic, can not generate function upfront
|
|
262
|
-
if (nodeAction) {
|
|
263
|
-
$parseEvent(nodeAction)(this);
|
|
264
|
-
}
|
|
265
|
-
this.invokeEventCallback('select', { $event: evt, $item: data, $path: path });
|
|
266
|
-
$appDigest();
|
|
267
|
-
}
|
|
268
|
-
// click event is added on the host nativeElement
|
|
269
|
-
bindEvents() {
|
|
270
|
-
$(this.nativeElement).on('click', (evt) => {
|
|
271
|
-
const target = $(evt.target), li = target.closest('li'), $i = target.is('i') ? target : target.siblings('i.collapsed,i.expanded');
|
|
272
|
-
evt.stopPropagation();
|
|
273
|
-
if (target.is('span.title')) { // select the node only if it is nodelabel
|
|
274
|
-
this.selecteditem = {};
|
|
275
|
-
this.selectNode(evt, li);
|
|
276
|
-
}
|
|
277
|
-
if (target.is('i') || (target.is('span.title') && this.nodeclick === 'expand')) {
|
|
278
|
-
this.toggleExpandCollapseNode(evt, $i, li);
|
|
279
|
-
}
|
|
280
|
-
});
|
|
281
|
-
}
|
|
282
|
-
findSelectedNodeParent($li) {
|
|
283
|
-
return $li.find('> span.title').parents('.app-tree li');
|
|
284
|
-
}
|
|
285
|
-
selectById(value) {
|
|
286
|
-
this.selectNode(undefined, value);
|
|
287
|
-
}
|
|
288
|
-
deselectById(value) {
|
|
289
|
-
this.selecteditem = {};
|
|
290
|
-
this.selectById();
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
TreeDirective.initializeProps = registerProps();
|
|
294
|
-
TreeDirective.decorators = [
|
|
295
|
-
{ type: Directive, args: [{
|
|
296
|
-
selector: 'div[wmTree]',
|
|
297
|
-
providers: [
|
|
298
|
-
provideAsWidgetRef(TreeDirective)
|
|
299
|
-
]
|
|
300
|
-
},] }
|
|
301
|
-
];
|
|
302
|
-
TreeDirective.ctorParameters = () => [
|
|
303
|
-
{ type: Injector },
|
|
304
|
-
{ type: undefined, decorators: [{ type: Attribute, args: ['datavalue.bind',] }] },
|
|
305
|
-
{ type: undefined, decorators: [{ type: Attribute, args: ['nodelabel.bind',] }] },
|
|
306
|
-
{ type: undefined, decorators: [{ type: Attribute, args: ['nodeicon.bind',] }] },
|
|
307
|
-
{ type: undefined, decorators: [{ type: Attribute, args: ['nodechildren.bind',] }] },
|
|
308
|
-
{ type: undefined, decorators: [{ type: Attribute, args: ['nodeid.bind',] }] }
|
|
309
|
-
];
|
|
310
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvdHJlZS9zcmMvdHJlZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVJLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHN0MsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLENBQUM7QUFDMUMsTUFBTSxZQUFZLEdBQUc7SUFDakIsUUFBUSxFQUFFO1FBQ04sVUFBVSxFQUFHLGdCQUFnQjtRQUM3QixXQUFXLEVBQUUsV0FBVztLQUMzQjtJQUNELG1CQUFtQixFQUFFO1FBQ2pCLFVBQVUsRUFBRywwQkFBMEI7UUFDdkMsV0FBVyxFQUFFLHVCQUF1QjtLQUN2QztJQUNELFNBQVMsRUFBRTtRQUNQLFVBQVUsRUFBRyx3QkFBd0I7UUFDckMsV0FBVyxFQUFFLHlCQUF5QjtLQUN6QztJQUNELE1BQU0sRUFBRTtRQUNKLFVBQVUsRUFBRyxlQUFlO1FBQzVCLFdBQVcsRUFBRSxnQkFBZ0I7S0FDaEM7SUFDRCxVQUFVLEVBQUU7UUFDUixVQUFVLEVBQUcsMkJBQTJCO1FBQ3hDLFdBQVcsRUFBRSx1QkFBdUI7S0FDdkM7SUFDRCxpQkFBaUIsRUFBRTtRQUNmLFVBQVUsRUFBRyxnQkFBZ0I7UUFDN0IsV0FBVyxFQUFFLGdCQUFnQjtLQUNoQztJQUNE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Z0JBQWdCOzRDQUMxQixTQUFTLFNBQUMsZUFBZTs0Q0FDekIsU0FBUyxTQUFDLG1CQUFtQjs0Q0FDN0IsU0FBUyxTQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRyaWJ1dGUsIERpcmVjdGl2ZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgJGFwcERpZ2VzdCwgJHBhcnNlRXZlbnQsICRwYXJzZUV4cHIsIGdldENsb25lZE9iamVjdCB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgQVBQTFlfU1RZTEVTX1RZUEUsIGdldEV2YWx1YXRlZERhdGEsIGdldE9yZGVyZWREYXRhc2V0LCBwcm92aWRlQXNXaWRnZXRSZWYsIFN0eWxhYmxlQ29tcG9uZW50LCBzdHlsZXIgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7IHJlZ2lzdGVyUHJvcHMgfSBmcm9tICcuL3RyZWUucHJvcHMnO1xuXG5kZWNsYXJlIGNvbnN0IF8sICQ7XG5jb25zdCBkZWZhdWx0VHJlZUljb25DbGFzcyA9ICdwbHVzLW1pbnVzJztcbmNvbnN0IElDT05fQ0xBU1NFUyA9IHtcbiAgICAnZm9sZGVyJzoge1xuICAgICAgICAnZXhwYW5kZWQnIDogJ3dpLWZvbGRlci1vcGVuJyxcbiAgICAgICAgJ2NvbGxhcHNlZCc6ICd3aS1mb2xkZXInXG4gICAgfSxcbiAgICAnY2lyY2xlLXBsdXMtbWludXMnOiB7XG4gICAgICAgICdleHBhbmRlZCcgOiAnd2ktcmVtb3ZlLWNpcmNsZS1vdXRsaW5lJyxcbiAgICAgICAgJ2NvbGxhcHNlZCc6ICd3aS1hZGQtY2lyY2xlLW91dGxpbmUnXG4gICAgfSxcbiAgICAnY2hldnJvbic6IHtcbiAgICAgICAgJ2V4cGFuZGVkJyA6ICd3aS1rZXlib2FyZC1hcnJvdy1kb3duJyxcbiAgICAgICAgJ2NvbGxhcHNlZCc6ICd3aS1rZXlib2FyZC1hcnJvdy1yaWdodCdcbiAgICB9LFxuICAgICdtZW51Jzoge1xuICAgICAgICAnZXhwYW5kZWQnIDogJ3dpLWFycm93LWRvd24nLFxuICAgICAgICAnY29sbGFwc2VkJzogJ3dpLWFycm93LXJpZ2h0J1xuICAgIH0sXG4gICAgJ3RyaWFuZ2xlJzoge1xuICAgICAgICAnZXhwYW5kZWQnIDogJ3dpLWFycm93LWRyb3AtZG93bi1jaXJjbGUnLFxuICAgICAgICAnY29sbGFwc2VkJzogJ3dpLXBsYXktY2lyY2xlLWZpbGxlZCdcbiAgICB9LFxuICAgICdleHBhbmQtY29sbGFwc2UnOiB7XG4gICAgICAgICdleHBhbmRlZCcgOiAnd2ktZXhwYW5kLWxlc3MnLFxuICAgICAgICAnY29sbGFwc2VkJzogJ3dpLWV4cGFuZC1tb3JlJ1xuICAgIH0sXG4gICAgJ3BsdXMtbWludXMnOiB7XG4gICAgICAgICdleHBhbmRlZCcgOiAnd2ktbWludXMnLFxuICAgICAgICAnY29sbGFwc2VkJzogJ3dpLXBsdXMnXG4gICAgfVxufTtcblxuY29uc3QgV0lER0VUX0lORk8gPSB7d2lkZ2V0VHlwZTogJ3dtLXRyZWUnLCBob3N0Q2xhc3M6ICdhcHAtdHJlZSd9O1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2Rpdlt3bVRyZWVdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUFzV2lkZ2V0UmVmKFRyZWVEaXJlY3RpdmUpXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBUcmVlRGlyZWN0aXZlIGV4dGVuZHMgU3R5bGFibGVDb21wb25lbnQge1xuICAgIHN0YXRpYyBpbml0aWFsaXplUHJvcHMgPSByZWdpc3RlclByb3BzKCk7XG5cbiAgICBwcml2YXRlIF9zZWxlY3ROb2RlOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG5vZGVzOiBBcnJheTxhbnk+O1xuXG4gICAgcHVibGljIGRhdGF2YWx1ZTogc3RyaW5nO1xuICAgIHB1YmxpYyB0cmVlaWNvbnM6IHN0cmluZztcbiAgICBwdWJsaWMgc2VsZWN0ZWRpdGVtOiBhbnk7XG4gICAgcHVibGljIG5vZGVpZDogc3RyaW5nO1xuICAgIHB1YmxpYyBub2RlYWN0aW9uOiBzdHJpbmc7XG4gICAgcHVibGljIG5vZGVjbGljazogc3RyaW5nO1xuICAgIHB1YmxpYyBub2RlbGFiZWw6IHN0cmluZztcbiAgICBwdWJsaWMgbm9kZWljb246IHN0cmluZztcbiAgICBwdWJsaWMgbm9kZWNoaWxkcmVuOiBzdHJpbmc7XG4gICAgcHVibGljIG9yZGVyYnk6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBpbmo6IEluamVjdG9yLFxuICAgICAgICBAQXR0cmlidXRlKCdkYXRhdmFsdWUuYmluZCcpIHByaXZhdGUgYmluZGRhdGF2YWx1ZSxcbiAgICAgICAgQEF0dHJpYnV0ZSgnbm9kZWxhYmVsLmJpbmQnKSBwcml2YXRlIGJpbmRub2RlbGFiZWwsXG4gICAgICAgIEBBdHRyaWJ1dGUoJ25vZGVpY29uLmJpbmQnKSBwcml2YXRlIGJpbmRub2RlaWNvbixcbiAgICAgICAgQEF0dHJpYnV0ZSgnbm9kZWNoaWxkcmVuLmJpbmQnKSBwcml2YXRlIGJpbmRub2RlY2hpbGRyZW4sXG4gICAgICAgIEBBdHRyaWJ1dGUoJ25vZGVpZC5iaW5kJykgcHJpdmF0ZSBiaW5kbm9kZWlkXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluaiwgV0lER0VUX0lORk8pO1xuICAgICAgICBzdHlsZXIodGhpcy5uYXRpdmVFbGVtZW50LCB0aGlzLCBBUFBMWV9TVFlMRVNfVFlQRS5DT05UQUlORVIpO1xuICAgICAgICB0aGlzLmJpbmRFdmVudHMoKTtcbiAgICB9XG5cbiAgICBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge1xuICAgICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICAgICAgY2FzZSAnZGF0YXNldCc6XG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlcyA9IHRoaXMuZ2V0Tm9kZXMobnYpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3NlbGVjdE5vZGUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJUcmVlKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdub2RlaWNvbic6XG4gICAgICAgICAgICBjYXNlICdub2RlbGFiZWwnOlxuICAgICAgICAgICAgY2FzZSAnbm9kZWNoaWxkcmVuJzpcbiAgICAgICAgICAgIGNhc2UgJ29yZGVyYnknOlxuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyVHJlZSgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAndHJlZWljb25zJzpcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZVRyZWVJY29ucyhudiwgb3YpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnZGF0YXZhbHVlJzpcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEJ5SWQobnYpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29uc3RydWN0Tm9kZXMobm9kZXMsIHBhcmVudCwgbGV2ZWxzLCBkZWVwLCBfZXZhbERhdGFWYWx1ZSkge1xuXG4gICAgICAgIGNvbnN0ICR1bCA9ICQoJzx1bD48L3VsPicpO1xuICAgICAgICBjb25zdCBfaWNvbkNsc2VzID0gSUNPTl9DTEFTU0VTW3RoaXMudHJlZWljb25zIHx8IGRlZmF1bHRUcmVlSWNvbkNsYXNzXTtcbiAgICAgICAgY29uc3QgX2V4cHIgPSAodGhpcy5iaW5kZGF0YXZhbHVlIHx8IHRoaXMuZGF0YXZhbHVlKTtcblxuICAgICAgICBsZXQgX2ljb25DbHMsIF9jbHM7XG5cbiAgICAgICAgX2NscyAgICAgPSBsZXZlbHMgPiAwID8gJyBleHBhbmRlZCAnIDogJyBjb2xsYXBzZWQgJztcbiAgICAgICAgX2ljb25DbHMgPSBfY2xzICsgKGxldmVscyA+IDAgPyBfaWNvbkNsc2VzLmV4cGFuZGVkIDogX2ljb25DbHNlcy5jb2xsYXBzZWQpO1xuXG4gICAgICAgIGRlZXAgPSBkZWVwIHx8IDA7XG5cbiAgICAgICAgcGFyZW50LmFwcGVuZCgkdWwpO1xuICAgICAgICBub2Rlcy5mb3JFYWNoKChub2RlLCBpZHgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0ICRsaSA9ICQoJzxsaT48L2xpPicpLFxuICAgICAgICAgICAgICAgICRpY29uTm9kZSA9ICQoJzxpPjwvaT4nKSxcbiAgICAgICAgICAgICAgICBub2RlTGFiZWwgPSBnZXRFdmFsdWF0ZWREYXRhKG5vZGUsIHtmaWVsZDogdGhpcy5ub2RlbGFiZWwsIGJpbmRFeHByZXNzaW9uOiB0aGlzLmJpbmRub2RlbGFiZWx9LCB0aGlzLnZpZXdQYXJlbnQpIHx8IG5vZGUubGFiZWwsXG4gICAgICAgICAgICAgICAgbm9kZUljb24gPSBnZXRFdmFsdWF0ZWREYXRhKG5vZGUsIHtmaWVsZDogdGhpcy5ub2RlaWNvbiwgYmluZEV4cHJlc3Npb246IHRoaXMuYmluZG5vZGVpY29ufSwgdGhpcy52aWV3UGFyZW50KSB8fCBub2RlLmljb24sXG4gICAgICAgICAgICAgICAgbm9kZUNoaWxkcmVuID0gZ2V0RXZhbHVhdGVkRGF0YShub2RlLCB7ZmllbGQ6IHRoaXMubm9kZWNoaWxkcmVuLCBiaW5kRXhwcmVzc2lvbjogdGhpcy5iaW5kbm9kZWNoaWxkcmVufSwgdGhpcy52aWV3UGFyZW50KSB8fCBub2RlLmNoaWxkcmVuO1xuICAgICAgICAgICAgbGV0IG5vZGVJZFZhbHVlID0gZ2V0RXZhbHVhdGVkRGF0YShub2RlLCB7ZmllbGQ6IHRoaXMubm9kZWlkLCBiaW5kRXhwcmVzc2lvbjogdGhpcy5iaW5kbm9kZWlkfSwgdGhpcy52aWV3UGFyZW50KTtcbiAgICAgICAgICAgIGlmIChub2RlSWRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgbm9kZUlkVmFsdWUgPSBub2RlLmNoaWxkcmVuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgaXNOb2RlTWF0Y2hlZCA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIGV4cGFuZENvbGxhcHNlSWNvbjtcblxuICAgICAgICAgICAgJGxpLmRhdGEoJ25vZGVkYXRhJywgbm9kZSlcbiAgICAgICAgICAgICAgICAuYXBwZW5kKCRpY29uTm9kZSlcbiAgICAgICAgICAgICAgICAuYXBwZW5kKGA8c3BhbiBjbGFzcz1cInRpdGxlXCI+JHtub2RlTGFiZWx9PC9zcGFuPmApXG4gICAgICAgICAgICAgICAgLmFwcGVuZFRvKCR1bCk7XG5cblxuICAgICAgICAgICAgLy8gaWYgZGF0YXZhbHVlKGllLCBleHByKSBpcyBwcm92aWRlZCBzZWxlY3QgdGhlIHRyZWUgbm9kZSBhY2NvcmRpbmdseVxuICAgICAgICAgICAgLy8gaWYgZGF0YXZhbHVlID09PSAnRmlyc3ROb2RlJyAtLSBzZWxlY3QgdGhlIEZpcnN0Tm9kZSBhdCBsZXZlbCAwXG4gICAgICAgICAgICAvLyBpZiBkYXRhdmFsdWUgPT09ICdMYXN0Tm9kZScgLS0gc2VsZWN0IHRoZSBMYXN0Tm9kZSBhdCBsZXZlbCAwXG4gICAgICAgICAgICAvLyBpZiBkYXRhdmFsdWUgaXMgYSBiaW5kIGV4cHJlc3Npb24gZXZhbHVhdGUgdGhlIGV4cHJlc3Npb24gZm9yIGVhY2ggbm9kZSBvZiB0aGUgdHJlZSB0aWxsIHRoZSBjb25kaXRpb24gaXMgc2F0aXNmaWVkLlxuXG4gICAgICAgICAgICAvLyBpZiBub2RlIGlkZW50aWZpZXIgaXMgcHJlc2VudCB0aGVuIHZlcmlmeSB0aGUgZGF0YXZhbHVlIGlzIGJvdW5kIGV4cHIgb3Igc3RhdGljIHZhbHVlIGFuZCBjb21wYXJlIHdpdGggdGhlIG5vZGUgbW9kZWxcbiAgICAgICAgICAgIGlmICh0aGlzLmJpbmRub2RlaWQgfHwgdGhpcy5ub2RlaWQpIHtcbiAgICAgICAgICAgICAgICBpc05vZGVNYXRjaGVkID0gdGhpcy5iaW5kZGF0YXZhbHVlID8gbm9kZUlkVmFsdWUgPT09IF9ldmFsRGF0YVZhbHVlIDogbm9kZUlkVmFsdWUgPT09IF9leHByO1xuICAgICAgICAgICAgICAgIGlmIChub2RlSWRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICRsaS5hdHRyKCdpZCcsIG5vZGVJZFZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuYmluZGRhdGF2YWx1ZSkgeyAvLyBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvbiBvbmx5IGlmIGl0IGlzIGJvdW5kICh1c2VFeHByZXNzaW9uKVxuICAgICAgICAgICAgICAgIGlzTm9kZU1hdGNoZWQgPSAhISRwYXJzZUV4cHIoX2V4cHIpKHRoaXMsIG5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gUGVyZm9ybSBMYXN0Tm9kZSBjaGVjayBvbmx5IGF0IGxldmVsIDAuKGllLCBkZWVwID0gMCk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3NlbGVjdE5vZGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoKF9leHByID09PSAnRmlyc3ROb2RlJyAmJiBpZHggPT09IDApXG4gICAgICAgICAgICAgICAgICAgIHx8ICghZGVlcCAmJiBfZXhwciA9PT0gJ0xhc3ROb2RlJyAmJiBpZHggPT09IG5vZGVzLmxlbmd0aCAtIDEpXG4gICAgICAgICAgICAgICAgICAgIHx8IGlzTm9kZU1hdGNoZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gc2F2ZSBhIHJlZmVyZW5jZSBvZiB0aGUgbm9kZSB0byBiZSBzZWxlY3RlZCBpbiBgX3NlbGVjdE5vZGVgXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NlbGVjdE5vZGUgPSAkbGk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YXZhbHVlICAgPSBub2RlSWRWYWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChub2RlSWNvbikge1xuICAgICAgICAgICAgICAgICRpY29uTm9kZS5hZGRDbGFzcyhub2RlSWNvbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChub2RlQ2hpbGRyZW4gJiYgbm9kZUNoaWxkcmVuLmxlbmd0aCkgeyAvLyBwYXJlbnQgbm9kZVxuICAgICAgICAgICAgICAgICRsaS5hZGRDbGFzcyhgcGFyZW50LW5vZGUgJHtfY2xzfWApO1xuICAgICAgICAgICAgICAgIGV4cGFuZENvbGxhcHNlSWNvbiA9ICQoYDxpIGNsYXNzPVwid2kgJHtfaWNvbkNsc31cIj48L2k+YCk7XG4gICAgICAgICAgICAgICAgaWYgKG5vZGVJY29uKSB7XG4gICAgICAgICAgICAgICAgICAgICRpY29uTm9kZS5hZGRDbGFzcyhub2RlSWNvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICRsaS5wcmVwZW5kKGV4cGFuZENvbGxhcHNlSWNvbik7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25zdHJ1Y3ROb2Rlcyhub2RlQ2hpbGRyZW4sICRsaSwgbGV2ZWxzIC0gMSwgZGVlcCArIDEsIF9ldmFsRGF0YVZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCFub2RlSWNvbikge1xuICAgICAgICAgICAgICAgICAgICAkaWNvbk5vZGUuYWRkQ2xhc3MoJ2xlYWYtbm9kZScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAkbGkuYWRkQ2xhc3MoJ2xlYWYtbm9kZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE5vZGVzRnJvbVN0cmluZyh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWUuc3BsaXQoJywnKS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgJ2xhYmVsJzogaXRlbSAmJiBpdGVtLnRyaW0oKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXROb2RlcyhuZXdWYWwpIHtcbiAgICAgICAgbGV0IG5vZGVzO1xuICAgICAgICBpZiAoXy5pc1N0cmluZyhuZXdWYWwpICYmICFfLmlzRW1wdHkobmV3VmFsKSkge1xuICAgICAgICAgICAgbmV3VmFsID0gbmV3VmFsLnRyaW0oKTtcbiAgICAgICAgICAgIGlmIChuZXdWYWwpIHtcbiAgICAgICAgICAgICAgICBub2RlcyA9IHRoaXMuZ2V0Tm9kZXNGcm9tU3RyaW5nKG5ld1ZhbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoXy5pc0FycmF5KG5ld1ZhbCkpIHtcbiAgICAgICAgICAgIG5ld1ZhbCA9IGdldE9yZGVyZWREYXRhc2V0KG5ld1ZhbCwgdGhpcy5vcmRlcmJ5KTtcbiAgICAgICAgICAgIG5vZGVzID0gbmV3VmFsO1xuICAgICAgICB9IGVsc2UgaWYgKF8uaXNPYmplY3QobmV3VmFsKSkge1xuICAgICAgICAgICAgbm9kZXMgPSBbbmV3VmFsXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbm9kZXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGFuZ2VUcmVlSWNvbnMobnYsIG92KSB7XG4gICAgICAgIGNvbnN0ICRlbCA9ICQodGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgbnYgPSBudiB8fCBkZWZhdWx0VHJlZUljb25DbGFzcztcbiAgICAgICAgb3YgPSBvdiB8fCBkZWZhdWx0VHJlZUljb25DbGFzcztcbiAgICAgICAgJGVsLmZpbmQoJ2kuZXhwYW5kZWQnKS5yZW1vdmVDbGFzcyhJQ09OX0NMQVNTRVNbb3ZdLmV4cGFuZGVkKS5hZGRDbGFzcyhJQ09OX0NMQVNTRVNbbnZdLmV4cGFuZGVkKTtcbiAgICAgICAgJGVsLmZpbmQoJ2kuY29sbGFwc2VkJykucmVtb3ZlQ2xhc3MoSUNPTl9DTEFTU0VTW292XS5jb2xsYXBzZWQpLmFkZENsYXNzKElDT05fQ0xBU1NFU1tudl0uY29sbGFwc2VkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRvZ2dsZUV4cGFuZENvbGxhcHNlTm9kZSgkZXZlbnQsICRpLCAkbGkpIHtcbiAgICAgICAgY29uc3QgdHJlZUljb25zID0gSUNPTl9DTEFTU0VTW3RoaXMudHJlZWljb25zIHx8IGRlZmF1bHRUcmVlSWNvbkNsYXNzXTtcbiAgICAgICAgY29uc3QgICRsaVBhdGggPSAgdGhpcy5maW5kU2VsZWN0ZWROb2RlUGFyZW50KCRsaSk7XG4gICAgICAgIGxldCBwYXRoID0gJyc7XG5cbiAgICAgICAgLy8gY29uc3RydWN0IHRoZSBwYXRoIG9mIHRoZSBub2RlXG4gICAgICAgICRsaVBhdGhcbiAgICAgICAgICAgIC5lYWNoKChpLCBlbCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSAkKGVsKS5jaGlsZHJlbignLnRpdGxlJykudGV4dCgpO1xuICAgICAgICAgICAgICAgIHBhdGggPSBgLyR7Y3VycmVudCArIHBhdGh9YDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICBjb25zdCAgZXZlbnRQYXJhbXMgPSB7XG4gICAgICAgICAgICAgICAgJyRldmVudCcgIDogJGV2ZW50LFxuICAgICAgICAgICAgICAgIFwiJGl0ZW1cIiAgIDogICRsaS5kYXRhKCdub2RlZGF0YScpLFxuICAgICAgICAgICAgICAgIFwiJHBhdGhcIiA6IHBhdGhcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgaWYgKCRpLmhhc0NsYXNzKCdjb2xsYXBzZWQnKSkge1xuICAgICAgICAgICAgJGkucmVtb3ZlQ2xhc3MoYGNvbGxhcHNlZCAke3RyZWVJY29ucy5jb2xsYXBzZWR9YCkuYWRkQ2xhc3MoYGV4cGFuZGVkICR7dHJlZUljb25zLmV4cGFuZGVkfWApO1xuICAgICAgICAgICAgJGxpLnJlbW92ZUNsYXNzKCdjb2xsYXBzZWQnKS5hZGRDbGFzcygnZXhwYW5kZWQnKTtcbiAgICAgICAgICAgIHRoaXMuaW52b2tlRXZlbnRDYWxsYmFjaygnZXhwYW5kJywgZXZlbnRQYXJhbXMpO1xuICAgICAgICB9IGVsc2UgaWYgKCRpLmhhc0NsYXNzKCdleHBhbmRlZCcpKSB7XG4gICAgICAgICAgICAkaS5yZW1vdmVDbGFzcyhgZXhwYW5kZWQgJHt0cmVlSWNvbnMuZXhwYW5kZWR9YCkuYWRkQ2xhc3MoYGNvbGxhcHNlZCAke3RyZWVJY29ucy5jb2xsYXBzZWR9YCk7XG4gICAgICAgICAgICAkbGkucmVtb3ZlQ2xhc3MoJ2V4cGFuZGVkJykuYWRkQ2xhc3MoJ2NvbGxhcHNlZCcpO1xuICAgICAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdjb2xsYXBzZScsIGV2ZW50UGFyYW1zKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVyVHJlZShmb3JjZVJlbmRlcj8pIHtcbiAgICAgICAgbGV0IGRvY0ZyYWcsXG4gICAgICAgICAgICAkbGksXG4gICAgICAgICAgICAkbGlQYXRoLFxuICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIHBhdGggPSAnJztcbiAgICAgICAgY29uc3QgbGV2ZWxzID0gK3RoaXMubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2xldmVscycpIHx8IDAsXG4gICAgICAgICAgICAkZWwgPSAkKHRoaXMubmF0aXZlRWxlbWVudCk7XG5cbiAgICAgICAgJGVsLmVtcHR5KCk7XG5cbiAgICAgICAgaWYgKGZvcmNlUmVuZGVyKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3ROb2RlID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubm9kZXMgJiYgdGhpcy5ub2Rlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGRvY0ZyYWcgPSBkb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG4gICAgICAgICAgICB0aGlzLmNvbnN0cnVjdE5vZGVzKHRoaXMubm9kZXMsICQoZG9jRnJhZyksIGxldmVscywgMCwgdGhpcy5kYXRhdmFsdWUpO1xuICAgICAgICAgICAgJGVsLmFwcGVuZChkb2NGcmFnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLl9zZWxlY3ROb2RlKSB7XG4gICAgICAgICAgICAkbGkgPSB0aGlzLl9zZWxlY3ROb2RlO1xuICAgICAgICAgICAgJGxpLmFkZENsYXNzKCdzZWxlY3RlZCcpO1xuICAgICAgICAgICAgZGF0YSAgICA9ICRsaS5kYXRhKCdub2RlZGF0YScpO1xuICAgICAgICAgICAgJGxpUGF0aCA9IHRoaXMuZmluZFNlbGVjdGVkTm9kZVBhcmVudCgkbGkpO1xuXG4gICAgICAgICAgICBpZiAoISRsaVBhdGgubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgJGxpUGF0aCA9ICRsaTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJGxpUGF0aFxuICAgICAgICAgICAgICAgIC5lYWNoKChpLCBlbCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCAkY3VycmVudCA9ICQoZWwpLFxuICAgICAgICAgICAgICAgICAgICAgICAgJGkgICAgICAgPSAkY3VycmVudC5jaGlsZHJlbignaS5jb2xsYXBzZWQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICR0aXRsZSAgID0gJGN1cnJlbnQuY2hpbGRyZW4oJy50aXRsZScpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvZ2dsZUV4cGFuZENvbGxhcHNlTm9kZSh1bmRlZmluZWQsICRpLCAkY3VycmVudCk7XG5cbiAgICAgICAgICAgICAgICAgICAgcGF0aCA9IGAvJHskdGl0bGUudGV4dCgpICsgcGF0aH1gO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkaXRlbSA9IGdldENsb25lZE9iamVjdChkYXRhKSB8fCB7fTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRpdGVtLnBhdGggPSBwYXRoO1xuXG4gICAgICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ3NlbGVjdCcsIHskZXZlbnQ6IHVuZGVmaW5lZCwgJGl0ZW06IGRhdGEsICRwYXRoOiBwYXRofSk7XG4gICAgICAgICAgICAkYXBwRGlnZXN0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdE5vZGUoZXZ0LCB2YWx1ZSkge1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBldnQgJiYgJChldnQudGFyZ2V0KSxcbiAgICAgICAgICAgICRlbCA9ICQodGhpcy5uYXRpdmVFbGVtZW50KSxcbiAgICAgICAgICAgICRsaSA9IF8uaXNPYmplY3QodmFsdWUpID8gdmFsdWUgOiAkZWwuZmluZChgbGlbaWQ9XCIke3ZhbHVlfVwiXWApLmZpcnN0KCk7XG4gICAgICAgIGxldCBkYXRhLFxuICAgICAgICAgICAgcGF0aCA9ICcnLFxuICAgICAgICAgICAgJGxpUGF0aCxcbiAgICAgICAgICAgIG5vZGVBY3Rpb247XG4gICAgICAgICRlbC5maW5kKCcuc2VsZWN0ZWQnKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgaWYgKCEkbGkubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgJGxpLmFkZENsYXNzKCdzZWxlY3RlZCcpO1xuICAgICAgICBkYXRhID0gJGxpLmRhdGEoJ25vZGVkYXRhJyk7XG4gICAgICAgIG5vZGVBY3Rpb24gPSBkYXRhW3RoaXMubm9kZWFjdGlvbiB8fCAnYWN0aW9uJ107XG5cbiAgICAgICAgLy8gaWYgdGhlIHNlbGVjdE5vZGUgaXMgaW5pdGlhdGVkIGJ5IGNsaWNrIGV2ZW50IHRoZW4gdXNlIHRoZSBuYXRpdmVFbGVtZW50IHRhcmdldCBmcm9tIGV2ZW50XG4gICAgICAgICRsaVBhdGggPSB0YXJnZXQgPyB0YXJnZXQucGFyZW50cygnLmFwcC10cmVlIGxpJykgOiB0aGlzLmZpbmRTZWxlY3RlZE5vZGVQYXJlbnQoJGxpKTtcblxuICAgICAgICAvLyBjb25zdHJ1Y3QgdGhlIHBhdGggb2YgdGhlIG5vZGVcbiAgICAgICAgJGxpUGF0aFxuICAgICAgICAgICAgLmVhY2goKGksIGVsKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudCA9ICQoZWwpLmNoaWxkcmVuKCcudGl0bGUnKS50ZXh0KCk7XG4gICAgICAgICAgICAgICAgcGF0aCA9IGAvJHtjdXJyZW50ICsgcGF0aH1gO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gZXhwYW5kIHRoZSBjdXJyZW50IG5vZGUgdGlsbCB0aGUgdmlld1BhcmVudCBsZXZlbCB3aGljaCBpcyBjb2xsYXBzZWRcbiAgICAgICAgJGxpLnBhcmVudHNVbnRpbCgkZWwsICdsaS5wYXJlbnQtbm9kZS5jb2xsYXBzZWQnKVxuICAgICAgICAgICAgLmVhY2goKGluZGV4LCBlbCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0ICRjdXJyZW50ID0gJChlbCksXG4gICAgICAgICAgICAgICAgICAgICRpID0gJGN1cnJlbnQuY2hpbGRyZW4oJ2kuY29sbGFwc2VkJyk7XG4gICAgICAgICAgICAgICAgdGhpcy50b2dnbGVFeHBhbmRDb2xsYXBzZU5vZGUodW5kZWZpbmVkLCAkaSwgJGN1cnJlbnQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5zZWxlY3RlZGl0ZW0gICAgICA9IGdldENsb25lZE9iamVjdChkYXRhKSB8fCB7fTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZGl0ZW0ucGF0aCA9IHBhdGg7XG5cbiAgICAgICAgaWYgKHRhcmdldCkge1xuICAgICAgICAgICAgaWYgKHRoaXMubm9kZWlkIHx8IHRoaXMuYmluZG5vZGVpZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YXZhbHVlID0gZ2V0RXZhbHVhdGVkRGF0YShkYXRhLCB7ZmllbGQ6IHRoaXMubm9kZWlkLCBiaW5kRXhwcmVzc2lvbjogdGhpcy5iaW5kbm9kZWlkfSwgdGhpcy52aWV3UGFyZW50KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhdmFsdWUgPSBnZXRDbG9uZWRPYmplY3QoZGF0YSkgfHwge307XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRhdGF2YWx1ZSA9IHZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9bVG9kby1DU1BdOiB0aGlzIGRhdGEgd2lsbCBiZSBkeW5hbWljLCBjYW4gbm90IGdlbmVyYXRlIGZ1bmN0aW9uIHVwZnJvbnRcbiAgICAgICAgaWYgKG5vZGVBY3Rpb24pIHtcbiAgICAgICAgICAgICRwYXJzZUV2ZW50KG5vZGVBY3Rpb24pKHRoaXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdzZWxlY3QnLCB7JGV2ZW50OiBldnQsICRpdGVtOiBkYXRhLCAkcGF0aDogcGF0aH0pO1xuICAgICAgICAkYXBwRGlnZXN0KCk7XG4gICAgfVxuICAgIC8vIGNsaWNrIGV2ZW50IGlzIGFkZGVkIG9uIHRoZSBob3N0IG5hdGl2ZUVsZW1lbnRcbiAgICBwcml2YXRlIGJpbmRFdmVudHMoKSB7XG4gICAgICAgICQodGhpcy5uYXRpdmVFbGVtZW50KS5vbignY2xpY2snLCAoZXZ0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0YXJnZXQgPSAkKGV2dC50YXJnZXQpLFxuICAgICAgICAgICAgICAgIGxpICAgICA9IHRhcmdldC5jbG9zZXN0KCdsaScpLFxuICAgICAgICAgICAgICAgICRpICAgICA9IHRhcmdldC5pcygnaScpID8gdGFyZ2V0IDogdGFyZ2V0LnNpYmxpbmdzKCdpLmNvbGxhcHNlZCxpLmV4cGFuZGVkJyk7XG5cbiAgICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgaWYgKHRhcmdldC5pcygnc3Bhbi50aXRsZScpKSB7IC8vIHNlbGVjdCB0aGUgbm9kZSBvbmx5IGlmIGl0IGlzIG5vZGVsYWJlbFxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRpdGVtID0ge307XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3ROb2RlKGV2dCwgbGkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGFyZ2V0LmlzKCdpJykgfHwgKHRhcmdldC5pcygnc3Bhbi50aXRsZScpICYmIHRoaXMubm9kZWNsaWNrID09PSAnZXhwYW5kJykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRvZ2dsZUV4cGFuZENvbGxhcHNlTm9kZShldnQsICRpLCBsaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZVBhcmVudCgkbGkpIHtcbiAgICAgICAgcmV0dXJuICRsaS5maW5kKCc+IHNwYW4udGl0bGUnKS5wYXJlbnRzKCcuYXBwLXRyZWUgbGknKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdEJ5SWQodmFsdWU/KSB7XG4gICAgICAgIHRoaXMuc2VsZWN0Tm9kZSh1bmRlZmluZWQsIHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBkZXNlbGVjdEJ5SWQodmFsdWU/KSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRpdGVtID0ge307XG4gICAgICAgIHRoaXMuc2VsZWN0QnlJZCgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Injector } from '@angular/core';
|
|
2
|
-
import { StylableComponent } from '@wm/components/base';
|
|
3
|
-
export declare class TreeDirective extends StylableComponent {
|
|
4
|
-
private binddatavalue;
|
|
5
|
-
private bindnodelabel;
|
|
6
|
-
private bindnodeicon;
|
|
7
|
-
private bindnodechildren;
|
|
8
|
-
private bindnodeid;
|
|
9
|
-
static initializeProps: void;
|
|
10
|
-
private _selectNode;
|
|
11
|
-
private nodes;
|
|
12
|
-
datavalue: string;
|
|
13
|
-
treeicons: string;
|
|
14
|
-
selecteditem: any;
|
|
15
|
-
nodeid: string;
|
|
16
|
-
nodeaction: string;
|
|
17
|
-
nodeclick: string;
|
|
18
|
-
nodelabel: string;
|
|
19
|
-
nodeicon: string;
|
|
20
|
-
nodechildren: string;
|
|
21
|
-
orderby: string;
|
|
22
|
-
constructor(inj: Injector, binddatavalue: any, bindnodelabel: any, bindnodeicon: any, bindnodechildren: any, bindnodeid: any);
|
|
23
|
-
onPropertyChange(key: string, nv: any, ov?: any): void;
|
|
24
|
-
private constructNodes;
|
|
25
|
-
private getNodesFromString;
|
|
26
|
-
private getNodes;
|
|
27
|
-
private changeTreeIcons;
|
|
28
|
-
private toggleExpandCollapseNode;
|
|
29
|
-
private renderTree;
|
|
30
|
-
private selectNode;
|
|
31
|
-
private bindEvents;
|
|
32
|
-
private findSelectedNodeParent;
|
|
33
|
-
private selectById;
|
|
34
|
-
private deselectById;
|
|
35
|
-
}
|