{"version":3,"file":"c8y-ngx-components-protocol-lwm2m.mjs","sources":["../../protocol-lwm2m/formly/lwm2m-file-pick-and-replace.type.component.ts","../../protocol-lwm2m/formly/lwm2m-file-pick-and-replace.type.component.html","../../protocol-lwm2m/formly/lwm2m-input-group-addon.type.component.ts","../../protocol-lwm2m/formly/lwm2m-input-group-addon.type.component.html","../../protocol-lwm2m/formly/lwm2m-UI-theme.module.ts","../../protocol-lwm2m/lwm2m.module.ts","../../protocol-lwm2m/ng1/plugin-checker.service.ts","../../protocol-lwm2m/ng1/index.ts","../../protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.ts"],"sourcesContent":["import { Component, ElementRef, ViewChild } from '@angular/core';\nimport { FieldType, FieldTypeConfig } from '@ngx-formly/core';\nimport { Lwm2mConfigurationService } from '@c8y/ngx-components/protocol-lwm2m/services';\nimport { AlertService, FilesService } from '@c8y/ngx-components';\n\n@Component({\n  selector: 'c8y-lwm2m-file-pick-replace-type',\n  templateUrl: './lwm2m-file-pick-and-replace.type.component.html'\n})\nexport class Lwm2mFilePickAndReplaceType extends FieldType<FieldTypeConfig> {\n  @ViewChild('picker', { static: false }) picker: ElementRef<HTMLInputElement>;\n  private fileReader = new FileReader();\n\n  constructor(\n    private service: Lwm2mConfigurationService<unknown>,\n    private fileService: FilesService,\n    private alertService: AlertService\n  ) {\n    super();\n  }\n\n  onFocus() {\n    this.picker?.nativeElement.click();\n    this.field.focus = true;\n  }\n\n  onPick(event) {\n    this.formControl.setErrors(null);\n\n    this.fileService.getFileExtension(event?.target?.files[0]) === 'pem'\n      ? this.fileReader.readAsDataURL(event?.target?.files[0])\n      : this.field?.formControl.setErrors({ invalidType: true });\n\n    if (this.props?.onPick instanceof Function && !this.formControl?.errors) {\n      this.fileReader.onload = () =>\n        this.onLoad(this.props.onPick, (error: DOMException) =>\n          this.alertService.danger(error.message)\n        );\n    }\n  }\n\n  remove() {\n    if (this.props.remove instanceof Function) {\n      this.props.remove();\n    }\n  }\n\n  private onLoad(resolve, reject) {\n    if (this.fileReader.readyState !== 2) {\n      return;\n    }\n\n    if (this.fileReader.error) {\n      reject(this.fileReader.error);\n    }\n\n    const result = this.service.cleanUpBase64Data(this.fileReader.result as string);\n    if (!result) this.formControl.setErrors({ strReplaceError: true });\n\n    resolve(result);\n  }\n}\n","<div class=\"input-group\">\n  <input\n    class=\"form-control\"\n    [class.is-invalid]=\"showError\"\n    [type]=\"'text'\"\n    [formControl]=\"formControl\"\n    [formlyAttributes]=\"field\"\n    [required]=\"props.required\"\n    [disabled]=\"props.disabled\"\n    readonly\n  />\n  <div class=\"input-group-btn a-i-end\">\n    <button\n      class=\"btn btn-primary btn-block\"\n      title=\"{{ 'Replace' | translate }}\"\n      type=\"button\"\n      (click)=\"onFocus()\"\n      [disabled]=\"props.disabled\"\n    >\n      <i c8yIcon=\"replace\"></i>\n      <input\n        class=\"hidden\"\n        id=\"file\"\n        type=\"file\"\n        accept=\".pem\"\n        #picker\n        (change)=\"onPick($event)\"\n      />\n    </button>\n    <button\n      class=\"btn btn-danger btn-block\"\n      title=\"{{ 'Remove' | translate }}\"\n      type=\"button\"\n      (click)=\"remove()\"\n      [disabled]=\"props.disabled\"\n    >\n      <i c8yIcon=\"minus-circle\"></i>\n    </button>\n  </div>\n</div>\n","import { Component, OnInit } from '@angular/core';\nimport { FieldType, FieldTypeConfig } from '@ngx-formly/core';\nimport { gettext } from '@c8y/ngx-components';\n\n@Component({\n  selector: 'c8y-lwm2m-input-group-addon',\n  templateUrl: './lwm2m-input-group-addon.type.component.html'\n})\nexport class Lwm2mInputGroupAddonType extends FieldType<FieldTypeConfig> implements OnInit {\n  ngOnInit() {\n    this.props.addonLabel = this.props?.addonLabel || gettext('undefined');\n  }\n}\n","<div class=\"input-group\">\n  <span class=\"input-group-addon\">{{ props?.addonLabel }}</span>\n  <input\n    class=\"form-control\"\n    [class.is-invalid]=\"showError\"\n    [type]=\"'text'\"\n    [formControl]=\"formControl\"\n    [formlyAttributes]=\"field\"\n    [required]=\"props.required\"\n    [disabled]=\"props.disabled\"\n  />\n</div>\n","import { NgModule } from '@angular/core';\nimport { FORMLY_CONFIG, FormlyFieldConfig } from '@ngx-formly/core';\nimport { FormlyPresetModule } from '@ngx-formly/core/preset';\nimport { Mode } from '@c8y/ngx-components/protocol-lwm2m/model';\nimport { Lwm2mFilePickAndReplaceType } from './lwm2m-file-pick-and-replace.type.component';\nimport { Lwm2mInputGroupAddonType } from './lwm2m-input-group-addon.type.component';\nimport {\n  gettext,\n  CommonModule as C8yCommonModule,\n  FormsModule as C8yFormsModule,\n  DynamicFormsModule,\n  LegendFieldWrapper\n} from '@c8y/ngx-components';\n\n@NgModule({\n  imports: [C8yCommonModule, C8yFormsModule, DynamicFormsModule, FormlyPresetModule],\n  declarations: [Lwm2mFilePickAndReplaceType, Lwm2mInputGroupAddonType],\n  providers: [\n    {\n      provide: FORMLY_CONFIG,\n      multi: true,\n      useValue: {\n        wrappers: [\n          {\n            name: 'legend',\n            component: LegendFieldWrapper\n          }\n        ],\n        presets: [\n          {\n            name: 'securityMode',\n            config: {\n              key: 'mode',\n              type: 'select',\n              defaultValue: Mode.NO_SEC,\n              props: {\n                label: gettext('Mode')\n              }\n            }\n          },\n          {\n            name: 'pskId',\n            config: {\n              key: 'pskId',\n              type: 'string',\n              props: {\n                label: gettext('PSK ID'),\n                required: true\n              },\n              expressions: {\n                'props.disabled': (field: FormlyFieldConfig) => field?.options?.formState?.disabled,\n                hide: (field: FormlyFieldConfig) => {\n                  return field.model?.mode !== Mode.PSK;\n                }\n              }\n            }\n          },\n          {\n            name: 'pskKey',\n            config: {\n              key: 'pskKey',\n              type: 'string',\n              props: {\n                label: gettext('Pre-shared key'),\n                placeholder: '0123456789abcdef',\n                pattern: '^([a-fA-F0-9]{2})+$',\n                required: true\n              },\n              expressions: {\n                'props.disabled': (field: FormlyFieldConfig) => field?.options?.formState?.disabled,\n                hide: (field: FormlyFieldConfig) => {\n                  return field.model?.mode !== Mode.PSK;\n                }\n              }\n            }\n          }\n        ],\n        types: [\n          {\n            name: 'switch',\n            extends: 'checkbox',\n            defaultOptions: {\n              props: {\n                switchMode: true,\n                indeterminate: false\n              }\n            }\n          },\n          {\n            name: 'file-pick-replace',\n            component: Lwm2mFilePickAndReplaceType,\n            wrappers: ['c8y-form-field']\n          },\n          {\n            name: 'input-addon',\n            component: Lwm2mInputGroupAddonType,\n            wrappers: ['c8y-form-field']\n          }\n        ],\n        validationMessages: [\n          {\n            name: 'invalidType',\n            message: gettext('The selected file is not supported.')\n          },\n          {\n            name: 'strReplaceError',\n            message: gettext('The selected file is not processable.')\n          }\n        ]\n      }\n    }\n  ]\n})\nexport class Lwm2mUIThemeModule {}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport {\n  gettext,\n  hookDataGridActionControls,\n  hookNavigator,\n  hookPatternMessages,\n  hookRoute,\n  ViewContext\n} from '@c8y/ngx-components';\nimport {\n  Lwm2mDeviceGridFactory,\n  LWM2MPostOpertaionsNavigationFactory\n} from '@c8y/ngx-components/protocol-lwm2m/factories';\nimport {\n  Lwm2mBootstrapParametersApiGuard,\n  Lwm2mConfigurationApiGuard,\n  Lwm2mDeviceTypeGuard,\n  Lwm2mMicroserviceGuard\n} from '@c8y/ngx-components/protocol-lwm2m/guards';\nimport {\n  LWM2MEndpoint,\n  lwm2mRegisterDeviceStringsIncomingFromMS\n} from '@c8y/ngx-components/protocol-lwm2m/model';\nimport { Lwm2mUIThemeModule } from './formly';\n@NgModule({\n  imports: [Lwm2mUIThemeModule]\n})\nexport class Lwm2mModule {\n  static forRoot(): ModuleWithProviders<Lwm2mModule> {\n    return {\n      ngModule: Lwm2mModule,\n      providers: [\n        hookNavigator(LWM2MPostOpertaionsNavigationFactory),\n        hookDataGridActionControls(Lwm2mDeviceGridFactory),\n        hookRoute({\n          path: 'post-operations',\n          loadComponent: () =>\n            import(\n              '@c8y/ngx-components/protocol-lwm2m/components/post-registration-operations'\n            ).then(m => m.LWM2MPostOperationsComponent),\n          icon: 'terminal',\n          priority: 2000,\n          canActivate: [Lwm2mMicroserviceGuard]\n        }),\n        hookRoute({\n          label: gettext('LWM2M Configuration'),\n          icon: 'c8y-device-protocols',\n          path: 'lwm2m-configuration',\n          context: ViewContext.Device,\n          loadComponent: () =>\n            import('@c8y/ngx-components/protocol-lwm2m/components/configuration').then(\n              m => m.Lwm2mConfigurationComponent\n            ),\n          canActivate: [Lwm2mMicroserviceGuard, Lwm2mDeviceTypeGuard, Lwm2mConfigurationApiGuard],\n          children: [\n            { path: '', redirectTo: 'basic', pathMatch: 'full' },\n            {\n              path: LWM2MEndpoint.deviceSettings,\n              loadComponent: () =>\n                import('@c8y/ngx-components/protocol-lwm2m/components/configuration').then(\n                  m => m.Lwm2mFormDeviceSettings\n                )\n            },\n            {\n              path: LWM2MEndpoint.connectivity,\n              loadComponent: () =>\n                import('@c8y/ngx-components/protocol-lwm2m/components/configuration').then(\n                  m => m.Lwm2mFormConnectivitySettings\n                )\n            },\n            {\n              path: LWM2MEndpoint.firmware,\n              loadComponent: () =>\n                import('@c8y/ngx-components/protocol-lwm2m/components/configuration').then(\n                  m => m.Lwm2mFormFirmwareSettings\n                )\n            },\n            {\n              path: LWM2MEndpoint.bootstrap,\n              loadComponent: () =>\n                import('@c8y/ngx-components/protocol-lwm2m/components/configuration').then(\n                  m => m.Lwm2mFormBootstrapSettings\n                )\n            },\n            {\n              path: LWM2MEndpoint.servers,\n              loadComponent: () =>\n                import('@c8y/ngx-components/protocol-lwm2m/components/configuration').then(\n                  m => m.Lwm2mFormServerSettings\n                )\n            }\n          ]\n        }),\n        hookRoute({\n          path: 'lwm2m-bootstrap-parameters',\n          context: ViewContext.Device,\n          loadComponent: () =>\n            import('@c8y/ngx-components/protocol-lwm2m/components/bootstrap-parameters').then(\n              m => m.Lwm2mBootstrapParametersComponent\n            ),\n          label: gettext('LWM2M bootstrap parameters'),\n          icon: 'c8y-device-protocols',\n          canActivate: [\n            Lwm2mMicroserviceGuard,\n            Lwm2mDeviceTypeGuard,\n            Lwm2mBootstrapParametersApiGuard\n          ]\n        }),\n        hookPatternMessages(lwm2mRegisterDeviceStringsIncomingFromMS)\n      ]\n    };\n  }\n}\n\n@NgModule({\n  imports: [Lwm2mModule.forRoot()]\n})\nexport class LWM2Module {}\n","import { Injectable } from '@angular/core';\nimport { downgradeInjectable } from '@angular/upgrade/static';\nimport { ApplicationService } from '@c8y/client';\n\n/**\n * @deprecated This service is deprecated and will be removed in a future version.\n * Use the PluginsResolveService instead.\n */\n@Injectable({\n  providedIn: 'root'\n})\nexport class Lwm2mPluginCheckerService {\n  constructor(private applicationService: ApplicationService) {}\n\n  async isLwm2mPluginInstalled() {\n    const { data } = await this.applicationService.listByName('lwm2m-ui-plugin');\n    return data.some(({ manifest }) => manifest?.exports[0]?.module === 'Lwm2mModuleWrapper');\n  }\n}\n\nexport const lwm2mPluginCheckerServiceDowngradedInjectable =\n  downgradeInjectable(Lwm2mPluginCheckerService);\n","import * as angular from 'angular';\nimport { registerNgModule } from '@c8y/ng1-modules';\nimport { lwm2mPluginCheckerServiceDowngradedInjectable } from './plugin-checker.service';\n\nconst NAME_LWM2M = 'c8y.upgrade.lwm2m';\n\nangular\n  .module(NAME_LWM2M, [])\n  .factory('c8yLwm2mPluginCheckerService', lwm2mPluginCheckerServiceDowngradedInjectable);\n\nexport const ng1ModulesLWM2M = [NAME_LWM2M];\n\nregisterNgModule(ng1ModulesLWM2M);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3","C8yCommonModule","C8yFormsModule"],"mappings":"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"}