@wavemaker/app-ng-runtime 11.10.0-next.47263 → 11.10.0-next.47267

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 (138) hide show
  1. app-ng-runtime/build-task/fesm2022/index.mjs +1 -1
  2. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  3. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs +1 -1
  4. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  5. app-ng-runtime/components/advanced/login/fesm2022/index.mjs +1 -1
  6. app-ng-runtime/components/advanced/login/fesm2022/index.mjs.map +1 -1
  7. app-ng-runtime/components/advanced/marquee/fesm2022/index.mjs +1 -1
  8. app-ng-runtime/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
  9. app-ng-runtime/components/base/fesm2022/index.mjs +2 -2
  10. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  11. app-ng-runtime/components/basic/default/fesm2022/index.mjs +1 -1
  12. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  13. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +1 -1
  14. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  15. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs +1 -1
  16. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  17. app-ng-runtime/components/basic/search/fesm2022/index.mjs +1 -1
  18. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  19. app-ng-runtime/components/basic/tree/fesm2022/index.mjs +1 -1
  20. app-ng-runtime/components/basic/tree/fesm2022/index.mjs.map +1 -1
  21. app-ng-runtime/components/chart/fesm2022/index.mjs +2 -2
  22. app-ng-runtime/components/chart/fesm2022/index.mjs.map +1 -1
  23. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs +2 -2
  24. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  25. app-ng-runtime/components/containers/layout-grid/fesm2022/index.mjs +1 -1
  26. app-ng-runtime/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
  27. app-ng-runtime/components/containers/linear-layout/fesm2022/index.mjs +1 -1
  28. app-ng-runtime/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
  29. app-ng-runtime/components/containers/panel/fesm2022/index.mjs +1 -1
  30. app-ng-runtime/components/containers/panel/fesm2022/index.mjs.map +1 -1
  31. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs +2 -2
  32. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  33. app-ng-runtime/components/containers/tile/fesm2022/index.mjs +1 -1
  34. app-ng-runtime/components/containers/tile/fesm2022/index.mjs.map +1 -1
  35. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs +1 -1
  36. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  37. app-ng-runtime/components/data/card/fesm2022/index.mjs +1 -1
  38. app-ng-runtime/components/data/card/fesm2022/index.mjs.map +1 -1
  39. app-ng-runtime/components/data/form/fesm2022/index.mjs +2 -2
  40. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  41. app-ng-runtime/components/data/list/fesm2022/index.mjs +1 -1
  42. app-ng-runtime/components/data/list/fesm2022/index.mjs.map +1 -1
  43. app-ng-runtime/components/data/live-table/fesm2022/index.mjs +1 -1
  44. app-ng-runtime/components/data/live-table/fesm2022/index.mjs.map +1 -1
  45. app-ng-runtime/components/data/pagination/fesm2022/index.mjs +1 -1
  46. app-ng-runtime/components/data/pagination/fesm2022/index.mjs.map +1 -1
  47. app-ng-runtime/components/data/table/fesm2022/index.mjs +2 -2
  48. app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
  49. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs +1 -1
  50. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  51. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs +1 -1
  52. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  53. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +1 -1
  54. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  55. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs +1 -1
  56. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  57. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs +1 -1
  58. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  59. app-ng-runtime/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
  60. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs +1 -1
  61. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  62. app-ng-runtime/components/input/calendar/fesm2022/index.mjs +2 -2
  63. app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
  64. app-ng-runtime/components/input/chips/fesm2022/index.mjs +1 -1
  65. app-ng-runtime/components/input/chips/fesm2022/index.mjs.map +1 -1
  66. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  67. app-ng-runtime/components/input/currency/fesm2022/index.mjs.map +1 -1
  68. app-ng-runtime/components/input/default/fesm2022/index.mjs +5 -5
  69. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  70. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +1 -1
  71. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  72. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs +1 -1
  73. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  74. app-ng-runtime/components/input/rating/fesm2022/index.mjs.map +1 -1
  75. app-ng-runtime/components/input/slider/fesm2022/index.mjs.map +1 -1
  76. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs +1 -1
  77. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  78. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +2 -2
  79. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  80. app-ng-runtime/components/navigation/navbar/fesm2022/index.mjs +1 -1
  81. app-ng-runtime/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  82. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +1 -1
  83. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  84. app-ng-runtime/components/page/default/fesm2022/index.mjs +1 -1
  85. app-ng-runtime/components/page/default/fesm2022/index.mjs.map +1 -1
  86. app-ng-runtime/components/page/footer/fesm2022/index.mjs +1 -1
  87. app-ng-runtime/components/page/footer/fesm2022/index.mjs.map +1 -1
  88. app-ng-runtime/components/page/header/fesm2022/index.mjs +1 -1
  89. app-ng-runtime/components/page/header/fesm2022/index.mjs.map +1 -1
  90. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs +1 -1
  91. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  92. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs +1 -1
  93. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  94. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs +1 -1
  95. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  96. app-ng-runtime/components/prefab/fesm2022/index.mjs.map +1 -1
  97. app-ng-runtime/core/fesm2022/index.mjs +2 -2
  98. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  99. app-ng-runtime/http/fesm2022/index.mjs.map +1 -1
  100. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs +1 -1
  101. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs.map +1 -1
  102. app-ng-runtime/mobile/components/basic/search/fesm2022/index.mjs.map +1 -1
  103. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs +1 -1
  104. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +1 -1
  105. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs +1 -1
  106. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs.map +1 -1
  107. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs +1 -1
  108. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +1 -1
  109. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs +1 -1
  110. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs.map +1 -1
  111. app-ng-runtime/mobile/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  112. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs.map +1 -1
  113. app-ng-runtime/mobile/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  114. app-ng-runtime/mobile/components/page/mobile-navbar/fesm2022/index.mjs.map +1 -1
  115. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs +1 -1
  116. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs.map +1 -1
  117. app-ng-runtime/mobile/core/fesm2022/index.mjs +1 -1
  118. app-ng-runtime/mobile/core/fesm2022/index.mjs.map +1 -1
  119. app-ng-runtime/mobile/offline/fesm2022/index.mjs +2 -2
  120. app-ng-runtime/mobile/offline/fesm2022/index.mjs.map +1 -1
  121. app-ng-runtime/mobile/placeholder/runtime/fesm2022/index.mjs.map +1 -1
  122. app-ng-runtime/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  123. app-ng-runtime/mobile/runtime/fesm2022/index.mjs.map +1 -1
  124. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  125. app-ng-runtime/mobile/variables/fesm2022/index.mjs.map +1 -1
  126. app-ng-runtime/oAuth/fesm2022/index.mjs.map +1 -1
  127. app-ng-runtime/package.json +1 -1
  128. app-ng-runtime/runtime/base/fesm2022/index.mjs +3 -3
  129. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  130. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs +2 -2
  131. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  132. app-ng-runtime/scripts/summernote/dist/summernote-lite.min.js +2 -2
  133. app-ng-runtime/security/fesm2022/index.mjs.map +1 -1
  134. app-ng-runtime/swipey/fesm2022/index.mjs.map +1 -1
  135. app-ng-runtime/transpiler/fesm2022/index.mjs +1 -1
  136. app-ng-runtime/transpiler/fesm2022/index.mjs.map +1 -1
  137. app-ng-runtime/variables/fesm2022/index.mjs +1 -1
  138. app-ng-runtime/variables/fesm2022/index.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/mobile/placeholder/runtime/src/components/app-ext.component.ts","../../../../../projects/mobile/placeholder/runtime/src/mobile-runtime.module.ts","../../../../../projects/mobile/placeholder/runtime/src/index.ts"],"sourcesContent":["// This is added as angular was throwing error as AppExtComponent is not found in mobile/placeholder\nimport { Component } from '@angular/core';\n\n@Component({\n selector: '[wmAppExt]',\n template: `<ng-container></ng-container>`\n})\nexport class AppExtComponent {\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { AppExtComponent } from './components/app-ext.component';\n\n@NgModule({\n declarations: [\n AppExtComponent\n ],\n exports: [\n AppExtComponent\n ]\n})\nexport class MobileRuntimeModule {\n static forRoot(): ModuleWithProviders<MobileRuntimeModule> {\n return {\n ngModule: MobileRuntimeModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;AAAA;;MAOa,eAAe,CAAA;gFAAf,eAAe,GAAA,CAAA,EAAA,CAAA,EAAA;oEAAf,eAAe,EAAA,SAAA,EAAA,CAAA,CAAA,EAAA,EAAA,UAAA,EAAA,EAAA,CAAA,CAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAA,wBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;YAFb,EAA6B,CAAA,kBAAA,CAAA,CAAA,CAAA,CAAA;;;iFAE/B,eAAe,EAAA,CAAA;cAJ3B,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACP,gBAAA,QAAQ,EAAE,YAAY;AACtB,gBAAA,QAAQ,EAAE,CAA+B,6BAAA,CAAA;AAC5C,aAAA,CAAA;;kFACY,eAAe,EAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,UAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;MCIf,mBAAmB,CAAA;AAC5B,IAAA,OAAO,OAAO,GAAA;QACV,OAAO;AACH,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE,EAAE;SAChB,CAAC;KACL;oFANQ,mBAAmB,GAAA,CAAA,EAAA,CAAA,EAAA;mEAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;;iFAAnB,mBAAmB,EAAA,CAAA;cAR/B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACN,gBAAA,YAAY,EAAE;oBACV,eAAe;AAClB,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACL,eAAe;AAClB,iBAAA;AACJ,aAAA,CAAA;;wFACY,mBAAmB,EAAA,EAAA,YAAA,EAAA,CANxB,eAAe,CAAA,EAAA,OAAA,EAAA,CAGf,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACRvB;;AAEG;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/mobile/placeholder/runtime/src/components/app-ext.component.ts","../../../../../projects/mobile/placeholder/runtime/src/mobile-runtime.module.ts","../../../../../projects/mobile/placeholder/runtime/src/index.ts"],"sourcesContent":["// This is added as angular was throwing error as AppExtComponent is not found in mobile/placeholder\nimport { Component } from '@angular/core';\n\n@Component({\n selector: '[wmAppExt]',\n template: `<ng-container></ng-container>`\n})\nexport class AppExtComponent {\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { AppExtComponent } from './components/app-ext.component';\n\n@NgModule({\n declarations: [\n AppExtComponent\n ],\n exports: [\n AppExtComponent\n ]\n})\nexport class MobileRuntimeModule {\n static forRoot(): ModuleWithProviders<MobileRuntimeModule> {\n return {\n ngModule: MobileRuntimeModule,\n providers: []\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;AAAA;;MAOa,eAAe,CAAA;gFAAf,eAAe,GAAA,CAAA,EAAA,CAAA;oEAAf,eAAe,EAAA,SAAA,EAAA,CAAA,CAAA,EAAA,EAAA,UAAA,EAAA,EAAA,CAAA,CAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAA,wBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;YAFb,EAA6B,CAAA,kBAAA,CAAA,CAAA,CAAA;;;iFAE/B,eAAe,EAAA,CAAA;cAJ3B,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACP,gBAAA,QAAQ,EAAE,YAAY;AACtB,gBAAA,QAAQ,EAAE,CAA+B,6BAAA;AAC5C,aAAA;;kFACY,eAAe,EAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,UAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;MCIf,mBAAmB,CAAA;AAC5B,IAAA,OAAO,OAAO,GAAA;QACV,OAAO;AACH,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE;SACd;;oFALI,mBAAmB,GAAA,CAAA,EAAA,CAAA;mEAAnB,mBAAmB,EAAA,CAAA,CAAA;;;iFAAnB,mBAAmB,EAAA,CAAA;cAR/B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACN,gBAAA,YAAY,EAAE;oBACV;AACH,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACL;AACH;AACJ,aAAA;;wFACY,mBAAmB,EAAA,EAAA,YAAA,EAAA,CANxB,eAAe,CAAA,EAAA,OAAA,EAAA,CAGf,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACRvB;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/mobile/placeholder/runtime-dynamic/src/mobile-runtime-dynamic.module.ts","../../../../../projects/mobile/placeholder/runtime-dynamic/src/index.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\n\nexport const MOBILE_COMPONENT_MODULES_FOR_ROOT = [];\n\n@NgModule({})\nexport class MobileRuntimeDynamicModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;AAEO,MAAM,iCAAiC,GAAG,GAAG;MAGvC,0BAA0B,CAAA;2FAA1B,0BAA0B,GAAA,CAAA,EAAA,CAAA,EAAA;mEAA1B,0BAA0B,EAAA,CAAA,CAAA,EAAA;;;iFAA1B,0BAA0B,EAAA,CAAA;cADtC,QAAQ;eAAC,EAAE,CAAA;;;ACJZ;;AAEG;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/mobile/placeholder/runtime-dynamic/src/mobile-runtime-dynamic.module.ts","../../../../../projects/mobile/placeholder/runtime-dynamic/src/index.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\n\nexport const MOBILE_COMPONENT_MODULES_FOR_ROOT = [];\n\n@NgModule({})\nexport class MobileRuntimeDynamicModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;AAEO,MAAM,iCAAiC,GAAG;MAGpC,0BAA0B,CAAA;2FAA1B,0BAA0B,GAAA,CAAA,EAAA,CAAA;mEAA1B,0BAA0B,EAAA,CAAA,CAAA;;;iFAA1B,0BAA0B,EAAA,CAAA;cADtC,QAAQ;eAAC,EAAE;;;ACJZ;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../projects/mobile/runtime/src/services/cookie.service.ts","../../../../projects/mobile/runtime/src/components/app-ext.component.ts","../../../../projects/mobile/runtime/src/services/http-interceptor.service.ts","../../../../projects/mobile/runtime/src/services/webprocess.service.ts","../../../../projects/mobile/runtime/src/mobile-runtime.module.ts","../../../../projects/mobile/runtime/src/index.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { IDeviceStartUpService } from '@wm/mobile/core';\nimport { isIos } from '@wm/core';\nimport {forEach} from \"lodash-es\";\n\nconst STORAGE_KEY = 'wavemaker.persistedcookies';\n\ninterface CookieInfo {\n hostname: string;\n name: string;\n value: string;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CookieService implements IDeviceStartUpService {\n static readonly SERVICE_NAME = 'CookieService';\n private cookieInfo = {};\n\n public serviceName = 'CookeService';\n\n public persistCookie(hostname: string, cookieName: string, cookieValue?: string): Promise<void> {\n return new Promise<string>((resolve, reject) => {\n if (cookieValue) {\n resolve(cookieValue);\n } else {\n this.getCookie(hostname, cookieName)\n .then(data => resolve(data.cookieValue), reject);\n }\n }).then(value => {\n this.cookieInfo[hostname + '-' + cookieName] = {\n hostname: hostname.replace(/:[0-9]+/, ''),\n name: cookieName,\n value: this.rotateLTR(value)\n };\n localStorage.setItem(STORAGE_KEY, JSON.stringify(this.cookieInfo));\n });\n }\n\n public getCookie(hostname: string, cookieName: string): Promise<any> {\n return new Promise<any>((resolve, reject) => {\n if (isIos()) {\n const cookieString = window['cordova'].plugin.http.getCookieString(hostname);\n if (cookieString) {\n const at = cookieString.indexOf(cookieName);\n if (at >= 0) {\n const start = at + cookieName.length + 1;\n const end = cookieString.indexOf(';', start);\n const cookieValue = cookieString.substring(start, end >= 0 ? end : undefined);\n resolve({\n cookieValue: cookieValue\n });\n return;\n }\n }\n reject();\n } else {\n window['cookieEmperor'].getCookie(hostname, cookieName, resolve, reject);\n }\n });\n }\n\n public setCookie(hostname: string, cookieName: string, cookieValue: string): Promise<any> {\n return new Promise<void>((resolve, reject) => {\n if (isIos()) {\n const cookieString = cookieName + '=' + cookieValue;\n window['cordova'].plugin.http.setCookie(hostname, cookieString);\n resolve();\n } else {\n window['cookieEmperor'].setCookie(hostname, cookieName, cookieValue, resolve, reject);\n }\n });\n }\n\n public clearAll(): Promise<any> {\n return new Promise<any>((resolve, reject) => {\n if (isIos()) {\n window['cordova'].plugin.http.clearCookies();\n resolve('');\n } else {\n window['cookieEmperor'].clearAll(resolve, reject);\n }\n });\n }\n\n /**\n * Loads persisted cookies from local storage and adds them to the browser.\n * @returns {*}\n */\n public start(): Promise<any> {\n const cookieInfoStr = localStorage.getItem(STORAGE_KEY),\n promises = [];\n if (cookieInfoStr) {\n const cookieInfo = JSON.parse(cookieInfoStr) as Map<string, CookieInfo>;\n forEach(cookieInfo, c => {\n // @ts-ignore\n if (c.name && c.value) {\n // @ts-ignore\n promises.push(this.getCookie(c.hostname, c.name).catch(() => {\n return new Promise((resolve, reject) => {\n // @ts-ignore\n window['cookieEmperor'].setCookie(c.hostname, c.name, this.rotateRTL(c.value), resolve, reject);\n });\n }));\n }\n });\n }\n return Promise.all(promises);\n }\n\n public getServiceName() {\n return CookieService.SERVICE_NAME;\n }\n\n /**\n * Just rotates the given string exactly from 1/3 of string length in left to right direction.\n * @param str\n * @returns {string}\n */\n private rotateLTR(str: string): string {\n const arr = str.split(''),\n tArr = [],\n shift = Math.floor(str.length / 3);\n arr.forEach((v, i) => {\n tArr[(i + shift) % arr.length] = arr[i];\n });\n return tArr.join('');\n }\n\n /**\n * Just rotates the given string exactly from 1/3 of string length in right to left direction..\n * @param str\n * @returns {string}\n */\n private rotateRTL(str: string): string {\n const arr = str.split(''),\n tArr = [],\n shift = Math.floor(str.length / 3);\n arr.forEach((v, i) => {\n tArr[(arr.length + i - shift) % arr.length] = arr[i];\n });\n return tArr.join('');\n }\n}\n","import { AfterViewInit, Component, ElementRef, ViewChild } from '@angular/core';\n\nimport { hasCordova } from '@wm/core';\nimport { FileBrowserComponent, FileSelectorService, ProcessManagerComponent, ProcessManagementService } from '@wm/mobile/components/basic';\n\n@Component({\n selector: '[wmAppExt]',\n template: `<ng-container> \n <div wmNetworkInfoToaster></div>\n <div wmAppUpdate></div>\n <div wmMobileFileBrowser></div>\n <div wmProcessManager></div>\n </ng-container>`\n})\nexport class AppExtComponent implements AfterViewInit {\n\n @ViewChild(FileBrowserComponent) fileBrowserComponent: FileBrowserComponent;\n\n @ViewChild(ProcessManagerComponent) processManagerComponent: ProcessManagerComponent;\n\n constructor(\n private elRef: ElementRef,\n private fileSelectorService: FileSelectorService,\n private processManagementService: ProcessManagementService\n ) {}\n\n ngAfterViewInit() {\n const mobileElements = $(this.elRef.nativeElement).find('>[wmNetworkInfoToaster], >[wmAppUpdate], >[wmMobileFileBrowser]');\n const $body = $('body');\n if (hasCordova()) {\n mobileElements.appendTo($body);\n this.fileSelectorService.setFileBrowser(this.fileBrowserComponent);\n } else {\n mobileElements.remove();\n }\n $(this.elRef.nativeElement).find('>[wmProgressManager]').appendTo($body);\n this.processManagementService.setUIComponent(this.processManagerComponent);\n }\n}\n","import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { from } from 'rxjs';\nimport { Observable, Subject } from 'rxjs';\nimport { mergeMap } from 'rxjs/operators';\n\nimport {\n App,\n executePromiseChain,\n getWmProjectProperties,\n hasCordova,\n removeExtraSlashes,\n} from '@wm/core';\nimport { DeviceFileDownloadService, DeviceService, NetworkService } from '@wm/mobile/core';\nimport { SecurityService } from '@wm/security';\nimport { CONSTANTS } from '@wm/variables';\nimport {forEach, split} from \"lodash-es\";\n\ndeclare const cordova;\n\ninterface RequestInterceptor {\n intercept(request: HttpRequest<any>): Promise<HttpRequest<any>>;\n}\n\n@Injectable()\nexport class MobileHttpInterceptor implements HttpInterceptor {\n\n private requestInterceptors: RequestInterceptor[] = [];\n\n public constructor(private app: App,\n file: File,\n deviceFileDownloadService: DeviceFileDownloadService,\n private deviceService: DeviceService,\n private networkService: NetworkService,\n securityService: SecurityService) {\n if (hasCordova()) {\n this.requestInterceptors.push(new SecurityInterceptor(app, file, securityService));\n this.requestInterceptors.push(new ServiceCallInterceptor(app));\n }\n }\n\n public intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n const subject = new Subject<HttpEvent<any>>();\n const token = localStorage.getItem(CONSTANTS.XSRF_COOKIE_NAME);\n const xsrfHeaderName = getWmProjectProperties().xsrf_header_name;\n if (token\n && xsrfHeaderName\n && this.app.deployedUrl\n && (request.url.indexOf('://') < 0\n || request.url.startsWith(this.app.deployedUrl))) {\n\n // Clone the request to add the new header\n request = request.clone({ headers: request.headers.set(xsrfHeaderName, token) });\n }\n const data = {request: request};\n\n // invoke the request only when device is ready.\n const obs = from(this.deviceService.whenReady()\n .then(() => executePromiseChain(this.getInterceptors(), [data])));\n return obs.pipe(mergeMap(() => {\n return next.handle(data.request);\n }));\n }\n\n private getInterceptors() {\n return this.requestInterceptors.map(i => {\n return (data) => i.intercept(data.request).then(req => data.request = req);\n });\n }\n\n private onHttpError(response: HttpResponse<any>) {\n if (hasCordova\n && (!response || !response.status || response.status < 0 || response.status === 404)\n && (this.networkService.isConnected())) {\n this.networkService.isAvailable(true);\n }\n }\n}\n\nclass ServiceCallInterceptor implements RequestInterceptor {\n\n private static REMOTE_SERVICE_URL_PATTERNS = [\n new RegExp('^((./)|/)?services/'),\n new RegExp('j_spring_security_check'),\n new RegExp('j_spring_security_logout')\n ];\n\n constructor(private app: App) {}\n\n public intercept(request: HttpRequest<any>): Promise<HttpRequest<any>> {\n let modifiedRequest = request;\n let url = request.url;\n // if necessary, prepend deployed url\n if (url.indexOf('://') < 0\n && ServiceCallInterceptor.REMOTE_SERVICE_URL_PATTERNS.find(r => r.test(url))) {\n url = this.app.deployedUrl + url;\n }\n url = removeExtraSlashes(url);\n if (url !== request.url) {\n modifiedRequest = request.clone({\n url: url\n });\n }\n return Promise.resolve(modifiedRequest);\n }\n\n}\n\nclass SecurityInterceptor implements RequestInterceptor {\n\n private initialized = false;\n private static PAGE_URL_PATTERN = new RegExp('page.min.json$');\n private static PREFAB_URL_PATTERN = new RegExp('^app/prefabs/.*/page.min.json$');\n private publicPages;\n\n constructor(private app: App, private file: File, private securityService: SecurityService) {}\n\n public intercept(request: HttpRequest<any>): Promise<HttpRequest<any>> {\n return new Promise<HttpRequest<any>>((resolve, reject) => {\n if (!SecurityInterceptor.PREFAB_URL_PATTERN.test(request.url)\n && SecurityInterceptor.PAGE_URL_PATTERN.test(request.url)) {\n return Promise.resolve().then(() => {\n if (!this.initialized) {\n return this.init();\n }\n }).then(() => {\n const urlSplits = split(request.url, '/');\n const pageName = urlSplits[urlSplits.length - 2];\n if (!this.publicPages || this.publicPages[pageName]) {\n return Promise.resolve(request);\n } else {\n this.securityService.getConfig(config => {\n if (!config.securityEnabled || config.authenticated) {\n resolve(request);\n } else {\n reject(`Page '${pageName}' is not accessible to the user.`);\n this.app.notify('http401', { page: pageName});\n }\n }, () => reject(`Security call failed.`));\n }\n return Promise.resolve(request);\n }).then(resolve, reject);\n }\n return resolve(request);\n });\n }\n\n /**\n * loads public pages from 'metadata/app/public-pages.info' and overrides canAccess method SecurityService\n */\n private init(): Promise<any> {\n const folderPath = cordova.file.applicationDirectory + 'www/metadata/app',\n fileName = 'public-pages.json';\n return this.file.readAsText(folderPath, fileName).then(text => {\n if (!this.initialized) {\n this.publicPages = {};\n this.initialized = true;\n forEach(JSON.parse(text), pageName => this.publicPages[pageName] = true);\n }\n }).catch(() => {\n this.initialized = true;\n });\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { App, AbstractHttpService } from '@wm/core';\nimport { ExtAppMessageService } from '@wm/mobile/core';\n\ndeclare const cordova;\n\n@Injectable()\nexport class WebProcessService {\n\n constructor(\n private app: App,\n private httpService: AbstractHttpService,\n private extAppMessageService: ExtAppMessageService\n ) {}\n\n public execute(process: string, hookUrl: string, useSystemBrowser = false): Promise<any> {\n return this.httpService.get(`/services/webprocess/prepare?processName=${process}&hookUrl=${hookUrl}&requestSourceType=MOBILE`)\n .then((processInfo) => {\n if (useSystemBrowser) {\n return this.executeWithSystemBrowser(processInfo);\n } else {\n return this.executeWithInAppBrowser(processInfo, process);\n }\n }).then(output => {\n return this.httpService.get('/services/webprocess/decode?encodedProcessdata=' + output);\n });\n }\n\n private executeWithSystemBrowser(processInfo: string): Promise<any> {\n return new Promise((resolve) => {\n const oauthAdress = '^services/webprocess/LOGIN';\n const deregister = this.extAppMessageService.subscribe(oauthAdress, message => {\n resolve(message.data['process_output']);\n deregister();\n });\n window.open(this.app.deployedUrl + 'services/webprocess/start?process=' + encodeURIComponent(processInfo), '_system');\n });\n }\n\n private executeWithInAppBrowser(processInfo: string, process: string): Promise<any> {\n return new Promise((resolve, reject) => {\n const ref = cordova.InAppBrowser.open(this.app.deployedUrl + 'services/webprocess/start?process=' + encodeURIComponent(processInfo), '_blank', 'location=yes,clearcache=yes');\n let isSuccess = false;\n ref.addEventListener('loadstop', () => {\n ref.executeScript({ code: this.getScriptToInject(process)}, output => {\n if (output && output[0]) {\n isSuccess = true;\n ref.close();\n resolve(output[0]);\n }\n });\n });\n ref.addEventListener('exit', () => {\n if (!isSuccess) {\n reject('Login process is stopped');\n }\n });\n });\n }\n\n private getScriptToInject(process: string): string {\n return `\n (function() {\n var elements = document.querySelectorAll('body.flex>a.link');\n for (var i = 0; i < elements.length; i++) {\n var href = elements[i].href;\n if (href && href.indexOf('://services/webprocess/${process}?process_output=')) {\n return href.split('process_output=')[1];\n }\n }\n window.isWebLoginProcess = true;\n })();\n `;\n }\n}\n","import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { AppVersion } from '@awesome-cordova-plugins/app-version/ngx';\nimport { BarcodeScanner } from '@awesome-cordova-plugins/barcode-scanner/ngx';\nimport { Calendar } from '@awesome-cordova-plugins/calendar/ngx';\nimport { Camera } from '@awesome-cordova-plugins/camera/ngx';\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { FileOpener } from '@awesome-cordova-plugins/file-opener/ngx';\nimport { Device } from '@awesome-cordova-plugins/device/ngx';\nimport { MediaCapture } from '@awesome-cordova-plugins/media-capture/ngx';\nimport { Geolocation } from '@awesome-cordova-plugins/geolocation/ngx';\nimport { Network } from '@awesome-cordova-plugins/network/ngx';\nimport { SQLite } from '@awesome-cordova-plugins/sqlite/ngx';\nimport { Vibration } from '@awesome-cordova-plugins/vibration/ngx';\nimport { LocationAccuracy } from '@awesome-cordova-plugins/location-accuracy/ngx';\nimport { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';\n\nimport { CookieService } from './services/cookie.service';\n\nimport {\n App,\n AbstractHttpService,\n hasCordova,\n insertAfter,\n isIpad,\n isIphone,\n isIpod,\n isObject,\n loadScript,\n loadStyleSheet,\n noop,\n removeNode,\n getWmProjectProperties\n} from '@wm/core';\nimport { FileExtensionFromMimePipe } from '@wm/components/base';\nimport { DeviceFileOpenerService, DeviceService, ExtAppMessageService, MobileCoreModule, NetworkService } from '@wm/mobile/core';\nimport {OfflineModule, PushService, PushServiceImpl} from '@wm/mobile/offline';\nimport { SecurityService } from '@wm/security';\nimport { VariablesModule } from '@wm/mobile/variables';\nimport { $rootScope, CONSTANTS } from '@wm/variables';\nimport { BasicModule } from '@wm/mobile/components/basic';\n\nimport { AppExtComponent } from './components/app-ext.component';\nimport { MobileHttpInterceptor } from './services/http-interceptor.service';\nimport { WebProcessService } from './services/webprocess.service';\nimport {SearchModule} from \"@wm/mobile/components/basic/search\";\nimport {SegmentedControlModule} from \"@wm/mobile/components/containers/segmented-control\";\nimport {MediaListModule} from \"@wm/mobile/components/data/media-list\";\nimport {BarcodeScannerModule} from \"@wm/mobile/components/device/barcode-scanner\";\nimport {CameraModule} from \"@wm/mobile/components/device/camera\";\nimport {FileUploadModule} from \"@wm/mobile/components/input/file-upload\";\nimport {PageModule} from \"@wm/mobile/components/page\";\nimport {LeftPanelModule} from \"@wm/mobile/components/page/left-panel\";\nimport {MobileNavbarModule} from \"@wm/mobile/components/page/mobile-navbar\";\nimport {TabBarModule} from \"@wm/mobile/components/page/tab-bar\";\nimport {keys} from \"lodash-es\";\n\ndeclare const $;\ndeclare const navigator, cordova;\n\nexport const MAX_WAIT_TIME_4_OAUTH_MESSAGE = 60000;\n\nconst MINIMUM_TAB_WIDTH = 768;\nconst KEYBOARD_CLASS = 'keyboard';\n\nconst cordovaServices = [\n AppVersion,\n BarcodeScanner,\n Calendar,\n Camera,\n File,\n FileOpener,\n Device,\n Geolocation,\n MediaCapture,\n Network,\n SQLite,\n Vibration,\n LocationAccuracy,\n Diagnostic\n];\n\nexport const MOBILE_COMPONENT_MODULES = [\n BasicModule,\n MobileCoreModule,\n OfflineModule,\n VariablesModule,\n SearchModule,\n SegmentedControlModule,\n MediaListModule,\n BarcodeScannerModule,\n CameraModule,\n FileUploadModule,\n PageModule,\n LeftPanelModule,\n MobileNavbarModule,\n TabBarModule\n];\n\n@NgModule({\n declarations: [\n AppExtComponent\n ],\n exports: [\n AppExtComponent,\n ...MOBILE_COMPONENT_MODULES\n ],\n imports: [\n MobileCoreModule,\n VariablesModule,\n BasicModule,\n ...MOBILE_COMPONENT_MODULES\n ],\n bootstrap: []\n})\nexport class MobileRuntimeModule {\n\n static forRoot(): ModuleWithProviders<MobileRuntimeModule> {\n /* add all providers that are required for mobile here. This is to simplify placeholder.*/\n return {\n ngModule: MobileRuntimeModule,\n providers: [\n WebProcessService,\n {\n provide: HTTP_INTERCEPTORS,\n useClass: MobileHttpInterceptor,\n multi: true\n },\n ...cordovaServices,\n FileExtensionFromMimePipe,\n {provide: PushService, useClass: PushServiceImpl}\n ]\n };\n }\n\n private static initialized = false;\n // Startup services have to be added only once in the app life-cycle.\n private static initializeRuntime(runtimeModule: MobileRuntimeModule,\n app: App,\n deviceFileOpenerService: DeviceFileOpenerService,\n deviceService: DeviceService) {\n if (this.initialized) {\n return;\n }\n this.initialized = true;\n app.deployedUrl = runtimeModule.getDeployedUrl();\n if (hasCordova()) {\n const unsubscribe = app.subscribe('pageReady', (page) => {\n navigator.splashscreen.hide();\n unsubscribe();\n });\n app.subscribe('userLoggedIn', () => {\n cordova && cordova.wavemaker.syncCookies();\n });\n runtimeModule.handleKeyBoardClass();\n app.subscribe('device-file-download', (data) => {\n deviceFileOpenerService.openRemoteFile(data.url, data.extension, data.name, data.headers).then(data.successCb, data.errorCb);\n });\n const __zone_symbol__FileReader = window['__zone_symbol__FileReader'];\n if (__zone_symbol__FileReader && __zone_symbol__FileReader.READ_CHUNK_SIZE) {\n // cordova File Reader is required. Otherwise, file operations are failing.\n window['FileReader'] = __zone_symbol__FileReader;\n }\n window.open = window['cordova']['InAppBrowser']['open'];\n runtimeModule.addAuthInBrowser();\n }\n deviceService.start();\n deviceService.whenReady().then(() => {\n if (hasCordova()) {\n runtimeModule._$appEl.addClass('cordova');\n runtimeModule.exposeOAuthService();\n // Fix for issue: ios device is not considering the background style, eventhough value is set in config.xml.\n if (window['StatusBar']) {\n window['StatusBar'].overlaysWebView(false);\n }\n }\n });\n }\n\n private _$appEl;\n\n constructor(\n private app: App,\n private cookieService: CookieService,\n private deviceFileOpenerService: DeviceFileOpenerService,\n private deviceService: DeviceService,\n private securityService: SecurityService,\n private httpService: AbstractHttpService,\n private extAppMessageService: ExtAppMessageService,\n private networkService: NetworkService,\n private webProcessService: WebProcessService\n ) {\n this._$appEl = $('.wm-app').first();\n if (this._$appEl.width() >= MINIMUM_TAB_WIDTH) {\n app.isTabletApplicationType = true;\n this._$appEl.addClass('wm-tablet-app');\n } else {\n this._$appEl.addClass('wm-mobile-app');\n }\n // applying os theme on getting os details\n app.subscribe('on-viewport-details', os => {\n this.applyOSTheme(os);\n });\n MobileRuntimeModule.initializeRuntime(this, this.app, this.deviceFileOpenerService, this.deviceService);\n }\n\n private exposeOAuthService() {\n window['OAuthInMobile'] = (providerId) => {\n return new Promise<string>((resolve, reject) => {\n const oauthAdress = '^services/oauth/' + providerId + '$';\n const deregister = this.extAppMessageService.subscribe(oauthAdress, message => {\n resolve(message.data['access_token']);\n deregister();\n clearTimeout(timerId);\n });\n const timerId = setTimeout(function () {\n deregister();\n reject(`Time out for oauth message after ${MAX_WAIT_TIME_4_OAUTH_MESSAGE % 1000} seconds`);\n }, MAX_WAIT_TIME_4_OAUTH_MESSAGE);\n });\n };\n const handleOpenURL = window['handleOpenURL'];\n handleOpenURL.isReady = true;\n handleOpenURL(handleOpenURL.lastURL);\n }\n\n public applyOSTheme(os) {\n let oldStyleSheet: any = $('link[theme=\"wmtheme\"][href ^=\"themes\"][href $=\"/style.css\"]').first();\n if (oldStyleSheet.length) {\n const themeUrl = oldStyleSheet.attr('href').replace(new RegExp('/[a-z]*/style.css$'), `/${os.toLowerCase()}/style.css`),\n newStyleSheet = loadStyleSheet(themeUrl, {name: 'theme', value: 'wmtheme'});\n oldStyleSheet = oldStyleSheet.length > 0 && oldStyleSheet[0];\n if (newStyleSheet && oldStyleSheet) {\n insertAfter(newStyleSheet, oldStyleSheet);\n removeNode(oldStyleSheet);\n }\n }\n\n // In angular development, styleSheet will point to .js files\n // In angular production, styleSheet will point to 'wm-android-styles.css' or 'wm-ios-styles.css'\n const removeTheme = os.toLowerCase() === 'android' ? 'wm-ios-styles' : 'wm-android-styles';\n let isDevBuild;\n const useTheme = 'wm-' + os.toLowerCase() + '-styles';\n let unusedStyleSheet: any = $('link[href *=' + removeTheme + ']').first();\n if (!unusedStyleSheet.length) {\n isDevBuild = true;\n unusedStyleSheet = $('script[src *=' + removeTheme + ']').first();\n }\n if (unusedStyleSheet.length) {\n let newStyleSheet;\n if (isDevBuild) {\n newStyleSheet = unusedStyleSheet.clone();\n newStyleSheet = newStyleSheet[0];\n newStyleSheet.src = newStyleSheet.src.replace(removeTheme, useTheme);\n loadScript(newStyleSheet.src, false);\n unusedStyleSheet = unusedStyleSheet[0];\n insertAfter(newStyleSheet, unusedStyleSheet);\n removeNode(unusedStyleSheet);\n } else {\n newStyleSheet = $('link[href *=' + useTheme + ']').first();\n newStyleSheet = newStyleSheet[0];\n loadStyleSheet(newStyleSheet.href, {name: 'theme', value: 'wmtheme'});\n removeNode(unusedStyleSheet[0]);\n }\n }\n }\n\n private handleKeyBoardClass() {\n const initialScreenSize = window.innerHeight;\n // keyboard class is added when keyboard is open.\n window.addEventListener('resize', () => {\n if (window.innerHeight < initialScreenSize) {\n this._$appEl.addClass(KEYBOARD_CLASS);\n } else {\n this._$appEl.removeClass(KEYBOARD_CLASS);\n }\n });\n }\n\n private getDeployedUrl(): string {\n let deployedUrl = $rootScope.project.deployedUrl;\n if (hasCordova()) {\n const baseUrl = $('meta[name=\"liveSync.deployedUrl\"]').attr('value');\n const config = this.deviceService.getConfig();\n if (baseUrl) {\n deployedUrl = baseUrl;\n } else {\n deployedUrl = this.deviceService.getBaseUrl();\n }\n this.app.customUrlScheme = config.customUrlScheme;\n }\n if (deployedUrl !== 'NONE' && !deployedUrl.endsWith('/')) {\n deployedUrl = deployedUrl + '/';\n }\n $rootScope.project.deployedUrl = deployedUrl;\n return deployedUrl;\n }\n\n private addAuthInBrowser() {\n let isAuthenticating = false;\n this.securityService.authInBrowser = (): Promise<any> => {\n if (!this.networkService.isConnected()) {\n return Promise.reject('In offline, app cannot contact the server.');\n }\n if (isAuthenticating) {\n return Promise.reject('Authentication is in process.');\n }\n isAuthenticating = true;\n return this.webProcessService.execute('LOGIN', '/', true)\n .then(output => {\n output = JSON.parse(output && output.replace(/&quot;/g, \"\\\"\"));\n if (output[CONSTANTS.XSRF_COOKIE_NAME]) {\n localStorage.setItem(CONSTANTS.XSRF_COOKIE_NAME, output[CONSTANTS.XSRF_COOKIE_NAME]);\n }\n isAuthenticating = false;\n return this.cookieService.clearAll()\n .then(() => {\n const promises = keys(output).map(k => {\n return this.cookieService.setCookie(this.app.deployedUrl, k, output[k]);\n });\n return Promise.all(promises);\n });\n })\n .then(() => this.app.notify('userLoggedIn', {}))\n .catch((e) => {\n isAuthenticating = false;\n return Promise.reject(e);\n });\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i2.CookieService","i5.WebProcessService"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../projects/mobile/runtime/src/services/cookie.service.ts","../../../../projects/mobile/runtime/src/components/app-ext.component.ts","../../../../projects/mobile/runtime/src/services/http-interceptor.service.ts","../../../../projects/mobile/runtime/src/services/webprocess.service.ts","../../../../projects/mobile/runtime/src/mobile-runtime.module.ts","../../../../projects/mobile/runtime/src/index.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { IDeviceStartUpService } from '@wm/mobile/core';\nimport { isIos } from '@wm/core';\nimport {forEach} from \"lodash-es\";\n\nconst STORAGE_KEY = 'wavemaker.persistedcookies';\n\ninterface CookieInfo {\n hostname: string;\n name: string;\n value: string;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CookieService implements IDeviceStartUpService {\n static readonly SERVICE_NAME = 'CookieService';\n private cookieInfo = {};\n\n public serviceName = 'CookeService';\n\n public persistCookie(hostname: string, cookieName: string, cookieValue?: string): Promise<void> {\n return new Promise<string>((resolve, reject) => {\n if (cookieValue) {\n resolve(cookieValue);\n } else {\n this.getCookie(hostname, cookieName)\n .then(data => resolve(data.cookieValue), reject);\n }\n }).then(value => {\n this.cookieInfo[hostname + '-' + cookieName] = {\n hostname: hostname.replace(/:[0-9]+/, ''),\n name: cookieName,\n value: this.rotateLTR(value)\n };\n localStorage.setItem(STORAGE_KEY, JSON.stringify(this.cookieInfo));\n });\n }\n\n public getCookie(hostname: string, cookieName: string): Promise<any> {\n return new Promise<any>((resolve, reject) => {\n if (isIos()) {\n const cookieString = window['cordova'].plugin.http.getCookieString(hostname);\n if (cookieString) {\n const at = cookieString.indexOf(cookieName);\n if (at >= 0) {\n const start = at + cookieName.length + 1;\n const end = cookieString.indexOf(';', start);\n const cookieValue = cookieString.substring(start, end >= 0 ? end : undefined);\n resolve({\n cookieValue: cookieValue\n });\n return;\n }\n }\n reject();\n } else {\n window['cookieEmperor'].getCookie(hostname, cookieName, resolve, reject);\n }\n });\n }\n\n public setCookie(hostname: string, cookieName: string, cookieValue: string): Promise<any> {\n return new Promise<void>((resolve, reject) => {\n if (isIos()) {\n const cookieString = cookieName + '=' + cookieValue;\n window['cordova'].plugin.http.setCookie(hostname, cookieString);\n resolve();\n } else {\n window['cookieEmperor'].setCookie(hostname, cookieName, cookieValue, resolve, reject);\n }\n });\n }\n\n public clearAll(): Promise<any> {\n return new Promise<any>((resolve, reject) => {\n if (isIos()) {\n window['cordova'].plugin.http.clearCookies();\n resolve('');\n } else {\n window['cookieEmperor'].clearAll(resolve, reject);\n }\n });\n }\n\n /**\n * Loads persisted cookies from local storage and adds them to the browser.\n * @returns {*}\n */\n public start(): Promise<any> {\n const cookieInfoStr = localStorage.getItem(STORAGE_KEY),\n promises = [];\n if (cookieInfoStr) {\n const cookieInfo = JSON.parse(cookieInfoStr) as Map<string, CookieInfo>;\n forEach(cookieInfo, c => {\n // @ts-ignore\n if (c.name && c.value) {\n // @ts-ignore\n promises.push(this.getCookie(c.hostname, c.name).catch(() => {\n return new Promise((resolve, reject) => {\n // @ts-ignore\n window['cookieEmperor'].setCookie(c.hostname, c.name, this.rotateRTL(c.value), resolve, reject);\n });\n }));\n }\n });\n }\n return Promise.all(promises);\n }\n\n public getServiceName() {\n return CookieService.SERVICE_NAME;\n }\n\n /**\n * Just rotates the given string exactly from 1/3 of string length in left to right direction.\n * @param str\n * @returns {string}\n */\n private rotateLTR(str: string): string {\n const arr = str.split(''),\n tArr = [],\n shift = Math.floor(str.length / 3);\n arr.forEach((v, i) => {\n tArr[(i + shift) % arr.length] = arr[i];\n });\n return tArr.join('');\n }\n\n /**\n * Just rotates the given string exactly from 1/3 of string length in right to left direction..\n * @param str\n * @returns {string}\n */\n private rotateRTL(str: string): string {\n const arr = str.split(''),\n tArr = [],\n shift = Math.floor(str.length / 3);\n arr.forEach((v, i) => {\n tArr[(arr.length + i - shift) % arr.length] = arr[i];\n });\n return tArr.join('');\n }\n}\n","import { AfterViewInit, Component, ElementRef, ViewChild } from '@angular/core';\n\nimport { hasCordova } from '@wm/core';\nimport { FileBrowserComponent, FileSelectorService, ProcessManagerComponent, ProcessManagementService } from '@wm/mobile/components/basic';\n\n@Component({\n selector: '[wmAppExt]',\n template: `<ng-container> \n <div wmNetworkInfoToaster></div>\n <div wmAppUpdate></div>\n <div wmMobileFileBrowser></div>\n <div wmProcessManager></div>\n </ng-container>`\n})\nexport class AppExtComponent implements AfterViewInit {\n\n @ViewChild(FileBrowserComponent) fileBrowserComponent: FileBrowserComponent;\n\n @ViewChild(ProcessManagerComponent) processManagerComponent: ProcessManagerComponent;\n\n constructor(\n private elRef: ElementRef,\n private fileSelectorService: FileSelectorService,\n private processManagementService: ProcessManagementService\n ) {}\n\n ngAfterViewInit() {\n const mobileElements = $(this.elRef.nativeElement).find('>[wmNetworkInfoToaster], >[wmAppUpdate], >[wmMobileFileBrowser]');\n const $body = $('body');\n if (hasCordova()) {\n mobileElements.appendTo($body);\n this.fileSelectorService.setFileBrowser(this.fileBrowserComponent);\n } else {\n mobileElements.remove();\n }\n $(this.elRef.nativeElement).find('>[wmProgressManager]').appendTo($body);\n this.processManagementService.setUIComponent(this.processManagerComponent);\n }\n}\n","import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { from } from 'rxjs';\nimport { Observable, Subject } from 'rxjs';\nimport { mergeMap } from 'rxjs/operators';\n\nimport {\n App,\n executePromiseChain,\n getWmProjectProperties,\n hasCordova,\n removeExtraSlashes,\n} from '@wm/core';\nimport { DeviceFileDownloadService, DeviceService, NetworkService } from '@wm/mobile/core';\nimport { SecurityService } from '@wm/security';\nimport { CONSTANTS } from '@wm/variables';\nimport {forEach, split} from \"lodash-es\";\n\ndeclare const cordova;\n\ninterface RequestInterceptor {\n intercept(request: HttpRequest<any>): Promise<HttpRequest<any>>;\n}\n\n@Injectable()\nexport class MobileHttpInterceptor implements HttpInterceptor {\n\n private requestInterceptors: RequestInterceptor[] = [];\n\n public constructor(private app: App,\n file: File,\n deviceFileDownloadService: DeviceFileDownloadService,\n private deviceService: DeviceService,\n private networkService: NetworkService,\n securityService: SecurityService) {\n if (hasCordova()) {\n this.requestInterceptors.push(new SecurityInterceptor(app, file, securityService));\n this.requestInterceptors.push(new ServiceCallInterceptor(app));\n }\n }\n\n public intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n const subject = new Subject<HttpEvent<any>>();\n const token = localStorage.getItem(CONSTANTS.XSRF_COOKIE_NAME);\n const xsrfHeaderName = getWmProjectProperties().xsrf_header_name;\n if (token\n && xsrfHeaderName\n && this.app.deployedUrl\n && (request.url.indexOf('://') < 0\n || request.url.startsWith(this.app.deployedUrl))) {\n\n // Clone the request to add the new header\n request = request.clone({ headers: request.headers.set(xsrfHeaderName, token) });\n }\n const data = {request: request};\n\n // invoke the request only when device is ready.\n const obs = from(this.deviceService.whenReady()\n .then(() => executePromiseChain(this.getInterceptors(), [data])));\n return obs.pipe(mergeMap(() => {\n return next.handle(data.request);\n }));\n }\n\n private getInterceptors() {\n return this.requestInterceptors.map(i => {\n return (data) => i.intercept(data.request).then(req => data.request = req);\n });\n }\n\n private onHttpError(response: HttpResponse<any>) {\n if (hasCordova\n && (!response || !response.status || response.status < 0 || response.status === 404)\n && (this.networkService.isConnected())) {\n this.networkService.isAvailable(true);\n }\n }\n}\n\nclass ServiceCallInterceptor implements RequestInterceptor {\n\n private static REMOTE_SERVICE_URL_PATTERNS = [\n new RegExp('^((./)|/)?services/'),\n new RegExp('j_spring_security_check'),\n new RegExp('j_spring_security_logout')\n ];\n\n constructor(private app: App) {}\n\n public intercept(request: HttpRequest<any>): Promise<HttpRequest<any>> {\n let modifiedRequest = request;\n let url = request.url;\n // if necessary, prepend deployed url\n if (url.indexOf('://') < 0\n && ServiceCallInterceptor.REMOTE_SERVICE_URL_PATTERNS.find(r => r.test(url))) {\n url = this.app.deployedUrl + url;\n }\n url = removeExtraSlashes(url);\n if (url !== request.url) {\n modifiedRequest = request.clone({\n url: url\n });\n }\n return Promise.resolve(modifiedRequest);\n }\n\n}\n\nclass SecurityInterceptor implements RequestInterceptor {\n\n private initialized = false;\n private static PAGE_URL_PATTERN = new RegExp('page.min.json$');\n private static PREFAB_URL_PATTERN = new RegExp('^app/prefabs/.*/page.min.json$');\n private publicPages;\n\n constructor(private app: App, private file: File, private securityService: SecurityService) {}\n\n public intercept(request: HttpRequest<any>): Promise<HttpRequest<any>> {\n return new Promise<HttpRequest<any>>((resolve, reject) => {\n if (!SecurityInterceptor.PREFAB_URL_PATTERN.test(request.url)\n && SecurityInterceptor.PAGE_URL_PATTERN.test(request.url)) {\n return Promise.resolve().then(() => {\n if (!this.initialized) {\n return this.init();\n }\n }).then(() => {\n const urlSplits = split(request.url, '/');\n const pageName = urlSplits[urlSplits.length - 2];\n if (!this.publicPages || this.publicPages[pageName]) {\n return Promise.resolve(request);\n } else {\n this.securityService.getConfig(config => {\n if (!config.securityEnabled || config.authenticated) {\n resolve(request);\n } else {\n reject(`Page '${pageName}' is not accessible to the user.`);\n this.app.notify('http401', { page: pageName});\n }\n }, () => reject(`Security call failed.`));\n }\n return Promise.resolve(request);\n }).then(resolve, reject);\n }\n return resolve(request);\n });\n }\n\n /**\n * loads public pages from 'metadata/app/public-pages.info' and overrides canAccess method SecurityService\n */\n private init(): Promise<any> {\n const folderPath = cordova.file.applicationDirectory + 'www/metadata/app',\n fileName = 'public-pages.json';\n return this.file.readAsText(folderPath, fileName).then(text => {\n if (!this.initialized) {\n this.publicPages = {};\n this.initialized = true;\n forEach(JSON.parse(text), pageName => this.publicPages[pageName] = true);\n }\n }).catch(() => {\n this.initialized = true;\n });\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { App, AbstractHttpService } from '@wm/core';\nimport { ExtAppMessageService } from '@wm/mobile/core';\n\ndeclare const cordova;\n\n@Injectable()\nexport class WebProcessService {\n\n constructor(\n private app: App,\n private httpService: AbstractHttpService,\n private extAppMessageService: ExtAppMessageService\n ) {}\n\n public execute(process: string, hookUrl: string, useSystemBrowser = false): Promise<any> {\n return this.httpService.get(`/services/webprocess/prepare?processName=${process}&hookUrl=${hookUrl}&requestSourceType=MOBILE`)\n .then((processInfo) => {\n if (useSystemBrowser) {\n return this.executeWithSystemBrowser(processInfo);\n } else {\n return this.executeWithInAppBrowser(processInfo, process);\n }\n }).then(output => {\n return this.httpService.get('/services/webprocess/decode?encodedProcessdata=' + output);\n });\n }\n\n private executeWithSystemBrowser(processInfo: string): Promise<any> {\n return new Promise((resolve) => {\n const oauthAdress = '^services/webprocess/LOGIN';\n const deregister = this.extAppMessageService.subscribe(oauthAdress, message => {\n resolve(message.data['process_output']);\n deregister();\n });\n window.open(this.app.deployedUrl + 'services/webprocess/start?process=' + encodeURIComponent(processInfo), '_system');\n });\n }\n\n private executeWithInAppBrowser(processInfo: string, process: string): Promise<any> {\n return new Promise((resolve, reject) => {\n const ref = cordova.InAppBrowser.open(this.app.deployedUrl + 'services/webprocess/start?process=' + encodeURIComponent(processInfo), '_blank', 'location=yes,clearcache=yes');\n let isSuccess = false;\n ref.addEventListener('loadstop', () => {\n ref.executeScript({ code: this.getScriptToInject(process)}, output => {\n if (output && output[0]) {\n isSuccess = true;\n ref.close();\n resolve(output[0]);\n }\n });\n });\n ref.addEventListener('exit', () => {\n if (!isSuccess) {\n reject('Login process is stopped');\n }\n });\n });\n }\n\n private getScriptToInject(process: string): string {\n return `\n (function() {\n var elements = document.querySelectorAll('body.flex>a.link');\n for (var i = 0; i < elements.length; i++) {\n var href = elements[i].href;\n if (href && href.indexOf('://services/webprocess/${process}?process_output=')) {\n return href.split('process_output=')[1];\n }\n }\n window.isWebLoginProcess = true;\n })();\n `;\n }\n}\n","import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { AppVersion } from '@awesome-cordova-plugins/app-version/ngx';\nimport { BarcodeScanner } from '@awesome-cordova-plugins/barcode-scanner/ngx';\nimport { Calendar } from '@awesome-cordova-plugins/calendar/ngx';\nimport { Camera } from '@awesome-cordova-plugins/camera/ngx';\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { FileOpener } from '@awesome-cordova-plugins/file-opener/ngx';\nimport { Device } from '@awesome-cordova-plugins/device/ngx';\nimport { MediaCapture } from '@awesome-cordova-plugins/media-capture/ngx';\nimport { Geolocation } from '@awesome-cordova-plugins/geolocation/ngx';\nimport { Network } from '@awesome-cordova-plugins/network/ngx';\nimport { SQLite } from '@awesome-cordova-plugins/sqlite/ngx';\nimport { Vibration } from '@awesome-cordova-plugins/vibration/ngx';\nimport { LocationAccuracy } from '@awesome-cordova-plugins/location-accuracy/ngx';\nimport { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';\n\nimport { CookieService } from './services/cookie.service';\n\nimport {\n App,\n AbstractHttpService,\n hasCordova,\n insertAfter,\n isIpad,\n isIphone,\n isIpod,\n isObject,\n loadScript,\n loadStyleSheet,\n noop,\n removeNode,\n getWmProjectProperties\n} from '@wm/core';\nimport { FileExtensionFromMimePipe } from '@wm/components/base';\nimport { DeviceFileOpenerService, DeviceService, ExtAppMessageService, MobileCoreModule, NetworkService } from '@wm/mobile/core';\nimport {OfflineModule, PushService, PushServiceImpl} from '@wm/mobile/offline';\nimport { SecurityService } from '@wm/security';\nimport { VariablesModule } from '@wm/mobile/variables';\nimport { $rootScope, CONSTANTS } from '@wm/variables';\nimport { BasicModule } from '@wm/mobile/components/basic';\n\nimport { AppExtComponent } from './components/app-ext.component';\nimport { MobileHttpInterceptor } from './services/http-interceptor.service';\nimport { WebProcessService } from './services/webprocess.service';\nimport {SearchModule} from \"@wm/mobile/components/basic/search\";\nimport {SegmentedControlModule} from \"@wm/mobile/components/containers/segmented-control\";\nimport {MediaListModule} from \"@wm/mobile/components/data/media-list\";\nimport {BarcodeScannerModule} from \"@wm/mobile/components/device/barcode-scanner\";\nimport {CameraModule} from \"@wm/mobile/components/device/camera\";\nimport {FileUploadModule} from \"@wm/mobile/components/input/file-upload\";\nimport {PageModule} from \"@wm/mobile/components/page\";\nimport {LeftPanelModule} from \"@wm/mobile/components/page/left-panel\";\nimport {MobileNavbarModule} from \"@wm/mobile/components/page/mobile-navbar\";\nimport {TabBarModule} from \"@wm/mobile/components/page/tab-bar\";\nimport {keys} from \"lodash-es\";\n\ndeclare const $;\ndeclare const navigator, cordova;\n\nexport const MAX_WAIT_TIME_4_OAUTH_MESSAGE = 60000;\n\nconst MINIMUM_TAB_WIDTH = 768;\nconst KEYBOARD_CLASS = 'keyboard';\n\nconst cordovaServices = [\n AppVersion,\n BarcodeScanner,\n Calendar,\n Camera,\n File,\n FileOpener,\n Device,\n Geolocation,\n MediaCapture,\n Network,\n SQLite,\n Vibration,\n LocationAccuracy,\n Diagnostic\n];\n\nexport const MOBILE_COMPONENT_MODULES = [\n BasicModule,\n MobileCoreModule,\n OfflineModule,\n VariablesModule,\n SearchModule,\n SegmentedControlModule,\n MediaListModule,\n BarcodeScannerModule,\n CameraModule,\n FileUploadModule,\n PageModule,\n LeftPanelModule,\n MobileNavbarModule,\n TabBarModule\n];\n\n@NgModule({\n declarations: [\n AppExtComponent\n ],\n exports: [\n AppExtComponent,\n ...MOBILE_COMPONENT_MODULES\n ],\n imports: [\n MobileCoreModule,\n VariablesModule,\n BasicModule,\n ...MOBILE_COMPONENT_MODULES\n ],\n bootstrap: []\n})\nexport class MobileRuntimeModule {\n\n static forRoot(): ModuleWithProviders<MobileRuntimeModule> {\n /* add all providers that are required for mobile here. This is to simplify placeholder.*/\n return {\n ngModule: MobileRuntimeModule,\n providers: [\n WebProcessService,\n {\n provide: HTTP_INTERCEPTORS,\n useClass: MobileHttpInterceptor,\n multi: true\n },\n ...cordovaServices,\n FileExtensionFromMimePipe,\n {provide: PushService, useClass: PushServiceImpl}\n ]\n };\n }\n\n private static initialized = false;\n // Startup services have to be added only once in the app life-cycle.\n private static initializeRuntime(runtimeModule: MobileRuntimeModule,\n app: App,\n deviceFileOpenerService: DeviceFileOpenerService,\n deviceService: DeviceService) {\n if (this.initialized) {\n return;\n }\n this.initialized = true;\n app.deployedUrl = runtimeModule.getDeployedUrl();\n if (hasCordova()) {\n const unsubscribe = app.subscribe('pageReady', (page) => {\n navigator.splashscreen.hide();\n unsubscribe();\n });\n app.subscribe('userLoggedIn', () => {\n cordova && cordova.wavemaker.syncCookies();\n });\n runtimeModule.handleKeyBoardClass();\n app.subscribe('device-file-download', (data) => {\n deviceFileOpenerService.openRemoteFile(data.url, data.extension, data.name, data.headers).then(data.successCb, data.errorCb);\n });\n const __zone_symbol__FileReader = window['__zone_symbol__FileReader'];\n if (__zone_symbol__FileReader && __zone_symbol__FileReader.READ_CHUNK_SIZE) {\n // cordova File Reader is required. Otherwise, file operations are failing.\n window['FileReader'] = __zone_symbol__FileReader;\n }\n window.open = window['cordova']['InAppBrowser']['open'];\n runtimeModule.addAuthInBrowser();\n }\n deviceService.start();\n deviceService.whenReady().then(() => {\n if (hasCordova()) {\n runtimeModule._$appEl.addClass('cordova');\n runtimeModule.exposeOAuthService();\n // Fix for issue: ios device is not considering the background style, eventhough value is set in config.xml.\n if (window['StatusBar']) {\n window['StatusBar'].overlaysWebView(false);\n }\n }\n });\n }\n\n private _$appEl;\n\n constructor(\n private app: App,\n private cookieService: CookieService,\n private deviceFileOpenerService: DeviceFileOpenerService,\n private deviceService: DeviceService,\n private securityService: SecurityService,\n private httpService: AbstractHttpService,\n private extAppMessageService: ExtAppMessageService,\n private networkService: NetworkService,\n private webProcessService: WebProcessService\n ) {\n this._$appEl = $('.wm-app').first();\n if (this._$appEl.width() >= MINIMUM_TAB_WIDTH) {\n app.isTabletApplicationType = true;\n this._$appEl.addClass('wm-tablet-app');\n } else {\n this._$appEl.addClass('wm-mobile-app');\n }\n // applying os theme on getting os details\n app.subscribe('on-viewport-details', os => {\n this.applyOSTheme(os);\n });\n MobileRuntimeModule.initializeRuntime(this, this.app, this.deviceFileOpenerService, this.deviceService);\n }\n\n private exposeOAuthService() {\n window['OAuthInMobile'] = (providerId) => {\n return new Promise<string>((resolve, reject) => {\n const oauthAdress = '^services/oauth/' + providerId + '$';\n const deregister = this.extAppMessageService.subscribe(oauthAdress, message => {\n resolve(message.data['access_token']);\n deregister();\n clearTimeout(timerId);\n });\n const timerId = setTimeout(function () {\n deregister();\n reject(`Time out for oauth message after ${MAX_WAIT_TIME_4_OAUTH_MESSAGE % 1000} seconds`);\n }, MAX_WAIT_TIME_4_OAUTH_MESSAGE);\n });\n };\n const handleOpenURL = window['handleOpenURL'];\n handleOpenURL.isReady = true;\n handleOpenURL(handleOpenURL.lastURL);\n }\n\n public applyOSTheme(os) {\n let oldStyleSheet: any = $('link[theme=\"wmtheme\"][href ^=\"themes\"][href $=\"/style.css\"]').first();\n if (oldStyleSheet.length) {\n const themeUrl = oldStyleSheet.attr('href').replace(new RegExp('/[a-z]*/style.css$'), `/${os.toLowerCase()}/style.css`),\n newStyleSheet = loadStyleSheet(themeUrl, {name: 'theme', value: 'wmtheme'});\n oldStyleSheet = oldStyleSheet.length > 0 && oldStyleSheet[0];\n if (newStyleSheet && oldStyleSheet) {\n insertAfter(newStyleSheet, oldStyleSheet);\n removeNode(oldStyleSheet);\n }\n }\n\n // In angular development, styleSheet will point to .js files\n // In angular production, styleSheet will point to 'wm-android-styles.css' or 'wm-ios-styles.css'\n const removeTheme = os.toLowerCase() === 'android' ? 'wm-ios-styles' : 'wm-android-styles';\n let isDevBuild;\n const useTheme = 'wm-' + os.toLowerCase() + '-styles';\n let unusedStyleSheet: any = $('link[href *=' + removeTheme + ']').first();\n if (!unusedStyleSheet.length) {\n isDevBuild = true;\n unusedStyleSheet = $('script[src *=' + removeTheme + ']').first();\n }\n if (unusedStyleSheet.length) {\n let newStyleSheet;\n if (isDevBuild) {\n newStyleSheet = unusedStyleSheet.clone();\n newStyleSheet = newStyleSheet[0];\n newStyleSheet.src = newStyleSheet.src.replace(removeTheme, useTheme);\n loadScript(newStyleSheet.src, false);\n unusedStyleSheet = unusedStyleSheet[0];\n insertAfter(newStyleSheet, unusedStyleSheet);\n removeNode(unusedStyleSheet);\n } else {\n newStyleSheet = $('link[href *=' + useTheme + ']').first();\n newStyleSheet = newStyleSheet[0];\n loadStyleSheet(newStyleSheet.href, {name: 'theme', value: 'wmtheme'});\n removeNode(unusedStyleSheet[0]);\n }\n }\n }\n\n private handleKeyBoardClass() {\n const initialScreenSize = window.innerHeight;\n // keyboard class is added when keyboard is open.\n window.addEventListener('resize', () => {\n if (window.innerHeight < initialScreenSize) {\n this._$appEl.addClass(KEYBOARD_CLASS);\n } else {\n this._$appEl.removeClass(KEYBOARD_CLASS);\n }\n });\n }\n\n private getDeployedUrl(): string {\n let deployedUrl = $rootScope.project.deployedUrl;\n if (hasCordova()) {\n const baseUrl = $('meta[name=\"liveSync.deployedUrl\"]').attr('value');\n const config = this.deviceService.getConfig();\n if (baseUrl) {\n deployedUrl = baseUrl;\n } else {\n deployedUrl = this.deviceService.getBaseUrl();\n }\n this.app.customUrlScheme = config.customUrlScheme;\n }\n if (deployedUrl !== 'NONE' && !deployedUrl.endsWith('/')) {\n deployedUrl = deployedUrl + '/';\n }\n $rootScope.project.deployedUrl = deployedUrl;\n return deployedUrl;\n }\n\n private addAuthInBrowser() {\n let isAuthenticating = false;\n this.securityService.authInBrowser = (): Promise<any> => {\n if (!this.networkService.isConnected()) {\n return Promise.reject('In offline, app cannot contact the server.');\n }\n if (isAuthenticating) {\n return Promise.reject('Authentication is in process.');\n }\n isAuthenticating = true;\n return this.webProcessService.execute('LOGIN', '/', true)\n .then(output => {\n output = JSON.parse(output && output.replace(/&quot;/g, \"\\\"\"));\n if (output[CONSTANTS.XSRF_COOKIE_NAME]) {\n localStorage.setItem(CONSTANTS.XSRF_COOKIE_NAME, output[CONSTANTS.XSRF_COOKIE_NAME]);\n }\n isAuthenticating = false;\n return this.cookieService.clearAll()\n .then(() => {\n const promises = keys(output).map(k => {\n return this.cookieService.setCookie(this.app.deployedUrl, k, output[k]);\n });\n return Promise.all(promises);\n });\n })\n .then(() => this.app.notify('userLoggedIn', {}))\n .catch((e) => {\n isAuthenticating = false;\n return Promise.reject(e);\n });\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i2.CookieService","i5.WebProcessService"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../projects/mobile/runtime-dynamic/src/services/live-sync.service.ts","../../../../projects/mobile/runtime-dynamic/src/mobile-runtime-dynamic.module.ts","../../../../projects/mobile/runtime-dynamic/src/index.ts"],"sourcesContent":["import { Observable } from 'rxjs';\n\nimport { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\n\nimport { App, hasCordova, transformFileURI } from '@wm/core';\nimport { DeviceService, NetworkService } from '@wm/mobile/core';\n\ndeclare const $;\ndeclare const window, location, cordova;\n\ninterface Settings {\n enabled: boolean,\n position: {\n left: number,\n top: number,\n },\n show: boolean,\n cordovaPlugins: {}\n}\n\n@Injectable()\nexport class LiveSyncInterceptor implements HttpInterceptor {\n\n private urlsToSkip: string[] = [];\n private deployedUrl = '';\n private localAppUrl = '';\n private syncAppUrl = '';\n private urlsToLoadFromLocal = {\n 'config.json': 'config.json',\n };\n private urlsToLoadFromLive = {\n 'metadata/app/service-definitions.json': 'services/servicedefs',\n 'metadata/app/security-config.json': 'services/security/info'\n };\n private prefabServicePattern = /^metadata\\/prefabs\\/.*\\/service-definitions.json$/;\n private isLiveSyncEnabled = false;\n private settings: Settings = {\n enabled: false,\n position: null,\n show: true,\n cordovaPlugins: null\n };\n\n constructor(private app: App,\n private deviceService: DeviceService,\n private networkService: NetworkService,\n private file: File) {\n this.loadSettings();\n this.isLiveSyncEnabled = this.settings.enabled && hasCordova();\n this.deployedUrl = $('meta[name=\"liveSync.deployedUrl\"]').attr('value');\n this.localAppUrl = $('meta[name=\"liveSync.localAppUrl\"]').attr('value');\n this.syncAppUrl = $('meta[name=\"liveSync.syncAppUrl\"]').attr('value');\n this.defineAPI();\n if (!this.isLiveSyncEnabled) {\n this.goToLocalApp();\n if (this.deviceService.isAppConnectedToPreview()) {\n this.deviceService.whenReady().then(() => {\n this.deployedUrl = app.deployedUrl;\n if (!this.networkService.isConnected()) {\n return;\n }\n this.renderUI();\n if (!this.localAppUrl && !this.settings.cordovaPlugins) {\n this.getPlugins().then(plugins => {\n this.settings.cordovaPlugins = plugins;\n this.saveSettings();\n });\n }\n });\n }\n return;\n }\n if (this.syncAppUrl && this.deployedUrl) {\n this.deviceService.getConfig().baseUrl = this.deployedUrl;\n this.patchSQLite();\n this.patchHistoryApi();\n Object.keys(this.urlsToLoadFromLocal).forEach(k => {\n this.urlsToLoadFromLocal[k] = this.syncAppUrl + this.urlsToLoadFromLocal[k];\n });\n this.patchApp();\n this.renderUI();\n } else {\n window.navigator.splashscreen.hide = () => {};\n this.deployedUrl = app.deployedUrl;\n this.isLiveSyncEnabled = false;\n this.deviceService.whenReady().then(() => {\n this.networkService.isConnected() && this.launch();\n });\n }\n }\n\n private goToLocalApp() {\n if (this.localAppUrl) {\n location.href = this.localAppUrl;\n }\n }\n\n private defineAPI() {\n (window as any).liveSync = (flag) => {\n if (this.settings.enabled === !!flag\n || !this.networkService.isConnected()) {\n return;\n }\n this.settings.enabled = !!flag;\n this.saveSettings();\n setTimeout(() => {\n window.navigator.splashscreen.show();\n location.reload();\n }, 100);\n };\n }\n\n private transformPrefabServicedefinitions(url: string) {\n let isValid = this.prefabServicePattern.test(url),\n prefabName = '',\n prefabLoc = 0;\n if (isValid) {\n prefabLoc = 'metadata/prefabs/'.length;\n prefabName = url.substring(prefabLoc, url.indexOf('/', prefabLoc));\n return 'services/prefabs/' + prefabName + '/servicedefs';\n }\n return url;\n }\n\n public intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n if (!this.isLiveSyncEnabled) {\n return next.handle(request);\n }\n const deployedUrl = this.app.deployedUrl;\n let url = request.url;\n url = this.urlsToLoadFromLive[url] || this.urlsToLoadFromLocal[url] || url;\n url = this.transformPrefabServicedefinitions(url);\n if (url.startsWith('//')) {\n url = deployedUrl.split('//')[0] + url;\n }\n if (url.indexOf('://') < 0\n || this.urlsToSkip.indexOf(url) >= 0) {\n url = deployedUrl + '/' + url;\n }\n request = request.clone({url: url});\n return next.handle(request);\n }\n\n private mashUpHtmlFile() {\n const localDir = cordova.file.cacheDirectory;\n return new Promise((resolve, reject) => {\n $.ajax({\n url: this.deployedUrl + 'index.html',\n dataType: 'html',\n success: resolve,\n error: reject\n });\n }).then((fileContent: string) => {\n const port = location.port ? ':' + location.port : '';\n let path = this.localAppUrl ||\n (`${location.protocol}//${location.hostname}${port}${location.pathname}`);\n let cordovaPath = path;\n if (cordovaPath.endsWith('.html')) {\n const splits = cordovaPath.split('/').slice(0, );\n cordovaPath = splits.slice(0, splits.length - 1).join('/');\n }\n cordovaPath += '/cordova.js';\n const mAppUrl = `${location.protocol}//${location.hostname}${port}${transformFileURI(localDir + 'live-index.html')}`;\n fileContent = fileContent.replace('cordova.js', cordovaPath);\n fileContent = fileContent.replace('<head>', `\n <head>\n <base href=\"${this.deployedUrl}\">\n <meta name=\"liveSync.deployedUrl\" value=\"${this.deployedUrl}\">\n <meta name=\"liveSync.syncAppUrl\" value=\"${mAppUrl}\">\n <meta name=\"liveSync.localAppUrl\" value=\"${path}\">`);\n return this.file.writeFile(localDir, 'live-index.html', fileContent, {\n replace: true\n }).then(() => mAppUrl);\n });\n }\n\n private getPlugins() {\n return new Promise((resolve, reject) => {\n $.get(this.deployedUrl + 'config.xml').done(function (res) {\n const plugins = {};\n $(res).find('plugin').each(function (p) {\n plugins[$(this).attr('name')] = $(this).attr('spec');\n });\n resolve(plugins);\n }).fail(reject);\n });\n }\n\n private hasPluginsChanged() {\n return this.deviceService.whenReady()\n .then(() => this.getPlugins())\n .then(plugins => {\n const pluginsInApk = this.settings.cordovaPlugins || {};\n return !!Object.keys(plugins)\n .find(k => !pluginsInApk[k] || pluginsInApk[k] !== plugins[k]);\n });\n }\n\n private launch() {\n return this.mashUpHtmlFile()\n .then((filePath) => {\n localStorage.setItem('WM.NetworkService.isConnected', 'true');\n localStorage.setItem('WM.NetworkService._autoConnect', 'true');\n sessionStorage.setItem('debugMode', 'true');\n\n setTimeout(() => {\n window.navigator.splashscreen.show();\n window.location.href = filePath;\n }, 2000);\n });\n }\n\n private patchSQLite() {\n // Offline sql is not supported.\n delete window['SQLitePlugin'];\n }\n\n private patchApp() {\n this.app.reload = () => {\n if (this.networkService.isConnected()){\n window.navigator.splashscreen.show();\n this.launch();\n }\n };\n window['reloadApp'] = this.app.reload;\n }\n\n private patchHistoryApi() {\n const location = this.syncAppUrl;\n const origReplace = window.history.replaceState;\n window.history.replaceState = (state: any, title: string, url: string) => {\n if (url.startsWith('#')) {\n url = location + url;\n }\n origReplace.call(window.history, state, title, url);\n };\n const origPush = window.history.pushState;\n window.history.pushState = (state: any, title: string, url: string) => {\n if (url.startsWith('#')) {\n url = location + url;\n }\n origPush.call(window.history, state, title, url);\n };\n }\n\n public loadSettings() {\n const value = sessionStorage.getItem('wm.liveSync.settings');\n try {\n this.settings = value ? JSON.parse(value) : this.settings;\n } catch(e) {\n this.saveSettings();\n }\n }\n\n public saveSettings() {\n sessionStorage.setItem('wm.liveSync.settings', JSON.stringify(this.settings));\n }\n\n public renderUI() {\n if (this.settings.enabled) {\n this.hasPluginsChanged().then((changed) => {\n if (changed) {\n new DialogComponent({\n title: 'Require new build',\n info: 'Cordova Plugins in this app do not match with configuration of project in Studio.' +\n ' So, new Cordova Build is required for Live Sync to work properly.',\n iconClass: 'fa fa-warning fa-4x live-sync-warning-icon',\n actions: [{\n title: 'Got it',\n primary: true\n }]\n }).render();\n }\n });\n }\n new LiveSyncComponent(this.settings, () => {\n this.saveSettings();\n }).render();\n }\n\n}\n\nclass DialogComponent {\n private $ele: any = $('<div><div>');\n\n constructor(public options: {\n title? : string,\n info? : string,\n iconClass?: string,\n actions? : {\n title: string,\n action?: (dialog: DialogComponent) => void,\n primary?: boolean\n }[]\n }) {\n\n }\n\n dismiss() {\n this.$ele.remove();\n }\n\n render() {\n this.$ele = $(\n `<div class=\"live-sync-modal live-sync-control\">\n <div class=\"live-sync-info-container\">\n <span class=\"${this.options.iconClass}\">\n </span>\n <label class=\"live-sync-title\">\n ${this.options.title}\n </label>\n <label class=\"live-sync-description\">\n ${this.options.info}\n </label>\n <div class=\"live-sync-action-panel\">\n ${this.options.actions.map((a) => {\n return a ? `\n <button\n type=\"button\"\n class=\"live-sync-action ${a.primary ? ' live-sync-primary-action' : ''}\">\n ${a.title}\n </button>` : '';\n }).join('')}\n </div>\n </div>\n </div>\n `\n );\n $('body').append(this.$ele);\n const _this = this;\n this.$ele.find('.live-sync-action').each(function(index) {\n $(this).bind('click', () => {\n const action = _this.options.actions[index].action;\n if (action) {\n action(_this);\n }\n _this.dismiss();\n });\n });\n }\n}\n\nclass LiveSyncComponent {\n private $ele = $(\n `<div class=\"live-sync-control\">\n <button class=\"live-sync-control-btn\" type=\"button\">\n </button>\n </div>`);\n\n constructor(private settings: Settings, private onChange: () => void) {\n\n }\n\n private setPosition() {\n const menuIcon = this.$ele.find('.live-sync-control-btn');\n const position = this.settings.position;\n if(position) {\n menuIcon.css('left', position.left + 'px');\n menuIcon.css('top', position.top + 'px');\n }\n }\n\n private listenForShowEvent() {\n $('body').bind('touchstart', () => {\n const timerId = setTimeout(() => {\n this.settings.show = true;\n this.onChange();\n this.showConfirmation();\n }, 5000);\n $('body').bind('touchend', () => {\n clearTimeout(timerId);\n });\n });\n }\n\n private showConfirmation() {\n new DialogComponent({\n title: 'Enable Live Sync?',\n info: 'App UI is pulled from studio. But, offline functionality is turned off.',\n iconClass: 'live-sync-control-icon',\n actions: [{\n title: 'No',\n action: () => {\n this.settings.show = false;\n this.onChange();\n this.showHelpInfo();\n }\n }, {\n title: 'Yes',\n action: () => {\n window.liveSync(true);\n },\n primary: true\n }]\n }).render();\n };\n\n private showHelpInfo() {\n new DialogComponent({\n title: '',\n info: 'Tap and hold anywhere for 5 seconds to turn on Live Sync.',\n iconClass: 'live-sync-retrieval-info-icon',\n actions: [{\n title: 'Got it',\n primary: true\n }]\n }).render();\n };\n\n private renderButton() {\n const menuIcon = this.$ele.find('.live-sync-control-btn');\n this.$ele.on('touchstart', (event) => {\n event.stopPropagation();\n let addClass = true;\n $(document).on('touchmove.liveSync', (event) => {\n var origEvent = event.originalEvent.touches[0];\n if (origEvent && origEvent.pageX) {\n this.settings.position = {\n left: origEvent.pageX,\n top: origEvent.pageY\n };\n }\n this.setPosition();\n if (addClass) {\n menuIcon.addClass('touched');\n addClass = false;\n }\n });\n $(document).one('touchend', (event) => {\n this.onChange();\n menuIcon.removeClass('touched');\n $(document).off('touchmove.liveSync');\n });\n });\n menuIcon.click(() => window.reloadApp());\n $('body').append(this.$ele);\n }\n\n public render() {\n this.setPosition();\n if (this.settings.enabled) {\n this.renderButton();\n } else if (this.settings.show) {\n this.showConfirmation();\n }\n this.listenForShowEvent();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\n\n\nimport { BasicModule } from '@wm/mobile/components/basic';\nimport { SearchModule } from '@wm/mobile/components/basic/search';\n\nimport { SegmentedControlModule } from '@wm/mobile/components/containers/segmented-control';\n\nimport { MediaListModule } from '@wm/mobile/components/data/media-list';\n\nimport { BarcodeScannerModule } from '@wm/mobile/components/device/barcode-scanner';\nimport { CameraModule } from '@wm/mobile/components/device/camera';\n\nimport { FileUploadModule } from '@wm/mobile/components/input/file-upload';\n\nimport { PageModule } from '@wm/mobile/components/page';\nimport { LeftPanelModule } from '@wm/mobile/components/page/left-panel';\nimport { MobileNavbarModule } from '@wm/mobile/components/page/mobile-navbar';\nimport { TabBarModule } from '@wm/mobile/components/page/tab-bar';\nimport { LiveSyncInterceptor } from './services/live-sync.service';\n\nexport const MOBILE_COMPONENT_MODULES_FOR_ROOT = [\n BasicModule,\n SearchModule,\n SegmentedControlModule,\n MediaListModule,\n BarcodeScannerModule,\n CameraModule,\n FileUploadModule,\n PageModule,\n LeftPanelModule,\n MobileNavbarModule,\n TabBarModule\n];\n\n@NgModule({\n providers: [{\n provide: HTTP_INTERCEPTORS,\n useClass: LiveSyncInterceptor,\n multi: true\n }]\n})\nexport class MobileRuntimeDynamicModule {}\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/mobile/runtime-dynamic/src/services/live-sync.service.ts","../../../../projects/mobile/runtime-dynamic/src/mobile-runtime-dynamic.module.ts","../../../../projects/mobile/runtime-dynamic/src/index.ts"],"sourcesContent":["import { Observable } from 'rxjs';\n\nimport { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\n\nimport { App, hasCordova, transformFileURI } from '@wm/core';\nimport { DeviceService, NetworkService } from '@wm/mobile/core';\n\ndeclare const $;\ndeclare const window, location, cordova;\n\ninterface Settings {\n enabled: boolean,\n position: {\n left: number,\n top: number,\n },\n show: boolean,\n cordovaPlugins: {}\n}\n\n@Injectable()\nexport class LiveSyncInterceptor implements HttpInterceptor {\n\n private urlsToSkip: string[] = [];\n private deployedUrl = '';\n private localAppUrl = '';\n private syncAppUrl = '';\n private urlsToLoadFromLocal = {\n 'config.json': 'config.json',\n };\n private urlsToLoadFromLive = {\n 'metadata/app/service-definitions.json': 'services/servicedefs',\n 'metadata/app/security-config.json': 'services/security/info'\n };\n private prefabServicePattern = /^metadata\\/prefabs\\/.*\\/service-definitions.json$/;\n private isLiveSyncEnabled = false;\n private settings: Settings = {\n enabled: false,\n position: null,\n show: true,\n cordovaPlugins: null\n };\n\n constructor(private app: App,\n private deviceService: DeviceService,\n private networkService: NetworkService,\n private file: File) {\n this.loadSettings();\n this.isLiveSyncEnabled = this.settings.enabled && hasCordova();\n this.deployedUrl = $('meta[name=\"liveSync.deployedUrl\"]').attr('value');\n this.localAppUrl = $('meta[name=\"liveSync.localAppUrl\"]').attr('value');\n this.syncAppUrl = $('meta[name=\"liveSync.syncAppUrl\"]').attr('value');\n this.defineAPI();\n if (!this.isLiveSyncEnabled) {\n this.goToLocalApp();\n if (this.deviceService.isAppConnectedToPreview()) {\n this.deviceService.whenReady().then(() => {\n this.deployedUrl = app.deployedUrl;\n if (!this.networkService.isConnected()) {\n return;\n }\n this.renderUI();\n if (!this.localAppUrl && !this.settings.cordovaPlugins) {\n this.getPlugins().then(plugins => {\n this.settings.cordovaPlugins = plugins;\n this.saveSettings();\n });\n }\n });\n }\n return;\n }\n if (this.syncAppUrl && this.deployedUrl) {\n this.deviceService.getConfig().baseUrl = this.deployedUrl;\n this.patchSQLite();\n this.patchHistoryApi();\n Object.keys(this.urlsToLoadFromLocal).forEach(k => {\n this.urlsToLoadFromLocal[k] = this.syncAppUrl + this.urlsToLoadFromLocal[k];\n });\n this.patchApp();\n this.renderUI();\n } else {\n window.navigator.splashscreen.hide = () => {};\n this.deployedUrl = app.deployedUrl;\n this.isLiveSyncEnabled = false;\n this.deviceService.whenReady().then(() => {\n this.networkService.isConnected() && this.launch();\n });\n }\n }\n\n private goToLocalApp() {\n if (this.localAppUrl) {\n location.href = this.localAppUrl;\n }\n }\n\n private defineAPI() {\n (window as any).liveSync = (flag) => {\n if (this.settings.enabled === !!flag\n || !this.networkService.isConnected()) {\n return;\n }\n this.settings.enabled = !!flag;\n this.saveSettings();\n setTimeout(() => {\n window.navigator.splashscreen.show();\n location.reload();\n }, 100);\n };\n }\n\n private transformPrefabServicedefinitions(url: string) {\n let isValid = this.prefabServicePattern.test(url),\n prefabName = '',\n prefabLoc = 0;\n if (isValid) {\n prefabLoc = 'metadata/prefabs/'.length;\n prefabName = url.substring(prefabLoc, url.indexOf('/', prefabLoc));\n return 'services/prefabs/' + prefabName + '/servicedefs';\n }\n return url;\n }\n\n public intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n if (!this.isLiveSyncEnabled) {\n return next.handle(request);\n }\n const deployedUrl = this.app.deployedUrl;\n let url = request.url;\n url = this.urlsToLoadFromLive[url] || this.urlsToLoadFromLocal[url] || url;\n url = this.transformPrefabServicedefinitions(url);\n if (url.startsWith('//')) {\n url = deployedUrl.split('//')[0] + url;\n }\n if (url.indexOf('://') < 0\n || this.urlsToSkip.indexOf(url) >= 0) {\n url = deployedUrl + '/' + url;\n }\n request = request.clone({url: url});\n return next.handle(request);\n }\n\n private mashUpHtmlFile() {\n const localDir = cordova.file.cacheDirectory;\n return new Promise((resolve, reject) => {\n $.ajax({\n url: this.deployedUrl + 'index.html',\n dataType: 'html',\n success: resolve,\n error: reject\n });\n }).then((fileContent: string) => {\n const port = location.port ? ':' + location.port : '';\n let path = this.localAppUrl ||\n (`${location.protocol}//${location.hostname}${port}${location.pathname}`);\n let cordovaPath = path;\n if (cordovaPath.endsWith('.html')) {\n const splits = cordovaPath.split('/').slice(0, );\n cordovaPath = splits.slice(0, splits.length - 1).join('/');\n }\n cordovaPath += '/cordova.js';\n const mAppUrl = `${location.protocol}//${location.hostname}${port}${transformFileURI(localDir + 'live-index.html')}`;\n fileContent = fileContent.replace('cordova.js', cordovaPath);\n fileContent = fileContent.replace('<head>', `\n <head>\n <base href=\"${this.deployedUrl}\">\n <meta name=\"liveSync.deployedUrl\" value=\"${this.deployedUrl}\">\n <meta name=\"liveSync.syncAppUrl\" value=\"${mAppUrl}\">\n <meta name=\"liveSync.localAppUrl\" value=\"${path}\">`);\n return this.file.writeFile(localDir, 'live-index.html', fileContent, {\n replace: true\n }).then(() => mAppUrl);\n });\n }\n\n private getPlugins() {\n return new Promise((resolve, reject) => {\n $.get(this.deployedUrl + 'config.xml').done(function (res) {\n const plugins = {};\n $(res).find('plugin').each(function (p) {\n plugins[$(this).attr('name')] = $(this).attr('spec');\n });\n resolve(plugins);\n }).fail(reject);\n });\n }\n\n private hasPluginsChanged() {\n return this.deviceService.whenReady()\n .then(() => this.getPlugins())\n .then(plugins => {\n const pluginsInApk = this.settings.cordovaPlugins || {};\n return !!Object.keys(plugins)\n .find(k => !pluginsInApk[k] || pluginsInApk[k] !== plugins[k]);\n });\n }\n\n private launch() {\n return this.mashUpHtmlFile()\n .then((filePath) => {\n localStorage.setItem('WM.NetworkService.isConnected', 'true');\n localStorage.setItem('WM.NetworkService._autoConnect', 'true');\n sessionStorage.setItem('debugMode', 'true');\n\n setTimeout(() => {\n window.navigator.splashscreen.show();\n window.location.href = filePath;\n }, 2000);\n });\n }\n\n private patchSQLite() {\n // Offline sql is not supported.\n delete window['SQLitePlugin'];\n }\n\n private patchApp() {\n this.app.reload = () => {\n if (this.networkService.isConnected()){\n window.navigator.splashscreen.show();\n this.launch();\n }\n };\n window['reloadApp'] = this.app.reload;\n }\n\n private patchHistoryApi() {\n const location = this.syncAppUrl;\n const origReplace = window.history.replaceState;\n window.history.replaceState = (state: any, title: string, url: string) => {\n if (url.startsWith('#')) {\n url = location + url;\n }\n origReplace.call(window.history, state, title, url);\n };\n const origPush = window.history.pushState;\n window.history.pushState = (state: any, title: string, url: string) => {\n if (url.startsWith('#')) {\n url = location + url;\n }\n origPush.call(window.history, state, title, url);\n };\n }\n\n public loadSettings() {\n const value = sessionStorage.getItem('wm.liveSync.settings');\n try {\n this.settings = value ? JSON.parse(value) : this.settings;\n } catch(e) {\n this.saveSettings();\n }\n }\n\n public saveSettings() {\n sessionStorage.setItem('wm.liveSync.settings', JSON.stringify(this.settings));\n }\n\n public renderUI() {\n if (this.settings.enabled) {\n this.hasPluginsChanged().then((changed) => {\n if (changed) {\n new DialogComponent({\n title: 'Require new build',\n info: 'Cordova Plugins in this app do not match with configuration of project in Studio.' +\n ' So, new Cordova Build is required for Live Sync to work properly.',\n iconClass: 'fa fa-warning fa-4x live-sync-warning-icon',\n actions: [{\n title: 'Got it',\n primary: true\n }]\n }).render();\n }\n });\n }\n new LiveSyncComponent(this.settings, () => {\n this.saveSettings();\n }).render();\n }\n\n}\n\nclass DialogComponent {\n private $ele: any = $('<div><div>');\n\n constructor(public options: {\n title? : string,\n info? : string,\n iconClass?: string,\n actions? : {\n title: string,\n action?: (dialog: DialogComponent) => void,\n primary?: boolean\n }[]\n }) {\n\n }\n\n dismiss() {\n this.$ele.remove();\n }\n\n render() {\n this.$ele = $(\n `<div class=\"live-sync-modal live-sync-control\">\n <div class=\"live-sync-info-container\">\n <span class=\"${this.options.iconClass}\">\n </span>\n <label class=\"live-sync-title\">\n ${this.options.title}\n </label>\n <label class=\"live-sync-description\">\n ${this.options.info}\n </label>\n <div class=\"live-sync-action-panel\">\n ${this.options.actions.map((a) => {\n return a ? `\n <button\n type=\"button\"\n class=\"live-sync-action ${a.primary ? ' live-sync-primary-action' : ''}\">\n ${a.title}\n </button>` : '';\n }).join('')}\n </div>\n </div>\n </div>\n `\n );\n $('body').append(this.$ele);\n const _this = this;\n this.$ele.find('.live-sync-action').each(function(index) {\n $(this).bind('click', () => {\n const action = _this.options.actions[index].action;\n if (action) {\n action(_this);\n }\n _this.dismiss();\n });\n });\n }\n}\n\nclass LiveSyncComponent {\n private $ele = $(\n `<div class=\"live-sync-control\">\n <button class=\"live-sync-control-btn\" type=\"button\">\n </button>\n </div>`);\n\n constructor(private settings: Settings, private onChange: () => void) {\n\n }\n\n private setPosition() {\n const menuIcon = this.$ele.find('.live-sync-control-btn');\n const position = this.settings.position;\n if(position) {\n menuIcon.css('left', position.left + 'px');\n menuIcon.css('top', position.top + 'px');\n }\n }\n\n private listenForShowEvent() {\n $('body').bind('touchstart', () => {\n const timerId = setTimeout(() => {\n this.settings.show = true;\n this.onChange();\n this.showConfirmation();\n }, 5000);\n $('body').bind('touchend', () => {\n clearTimeout(timerId);\n });\n });\n }\n\n private showConfirmation() {\n new DialogComponent({\n title: 'Enable Live Sync?',\n info: 'App UI is pulled from studio. But, offline functionality is turned off.',\n iconClass: 'live-sync-control-icon',\n actions: [{\n title: 'No',\n action: () => {\n this.settings.show = false;\n this.onChange();\n this.showHelpInfo();\n }\n }, {\n title: 'Yes',\n action: () => {\n window.liveSync(true);\n },\n primary: true\n }]\n }).render();\n };\n\n private showHelpInfo() {\n new DialogComponent({\n title: '',\n info: 'Tap and hold anywhere for 5 seconds to turn on Live Sync.',\n iconClass: 'live-sync-retrieval-info-icon',\n actions: [{\n title: 'Got it',\n primary: true\n }]\n }).render();\n };\n\n private renderButton() {\n const menuIcon = this.$ele.find('.live-sync-control-btn');\n this.$ele.on('touchstart', (event) => {\n event.stopPropagation();\n let addClass = true;\n $(document).on('touchmove.liveSync', (event) => {\n var origEvent = event.originalEvent.touches[0];\n if (origEvent && origEvent.pageX) {\n this.settings.position = {\n left: origEvent.pageX,\n top: origEvent.pageY\n };\n }\n this.setPosition();\n if (addClass) {\n menuIcon.addClass('touched');\n addClass = false;\n }\n });\n $(document).one('touchend', (event) => {\n this.onChange();\n menuIcon.removeClass('touched');\n $(document).off('touchmove.liveSync');\n });\n });\n menuIcon.click(() => window.reloadApp());\n $('body').append(this.$ele);\n }\n\n public render() {\n this.setPosition();\n if (this.settings.enabled) {\n this.renderButton();\n } else if (this.settings.show) {\n this.showConfirmation();\n }\n this.listenForShowEvent();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\n\n\nimport { BasicModule } from '@wm/mobile/components/basic';\nimport { SearchModule } from '@wm/mobile/components/basic/search';\n\nimport { SegmentedControlModule } from '@wm/mobile/components/containers/segmented-control';\n\nimport { MediaListModule } from '@wm/mobile/components/data/media-list';\n\nimport { BarcodeScannerModule } from '@wm/mobile/components/device/barcode-scanner';\nimport { CameraModule } from '@wm/mobile/components/device/camera';\n\nimport { FileUploadModule } from '@wm/mobile/components/input/file-upload';\n\nimport { PageModule } from '@wm/mobile/components/page';\nimport { LeftPanelModule } from '@wm/mobile/components/page/left-panel';\nimport { MobileNavbarModule } from '@wm/mobile/components/page/mobile-navbar';\nimport { TabBarModule } from '@wm/mobile/components/page/tab-bar';\nimport { LiveSyncInterceptor } from './services/live-sync.service';\n\nexport const MOBILE_COMPONENT_MODULES_FOR_ROOT = [\n BasicModule,\n SearchModule,\n SegmentedControlModule,\n MediaListModule,\n BarcodeScannerModule,\n CameraModule,\n FileUploadModule,\n PageModule,\n LeftPanelModule,\n MobileNavbarModule,\n TabBarModule\n];\n\n@NgModule({\n providers: [{\n provide: HTTP_INTERCEPTORS,\n useClass: LiveSyncInterceptor,\n multi: true\n }]\n})\nexport class MobileRuntimeDynamicModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}