File

translation-editor/lazy/advanced-translation-editor/advanced-translation-editor.component.ts

Metadata

Index

Properties
Methods

Constructor

constructor(appState: AppStateService, translationStore: TranslationStoreService, alert: AlertService, translation: TranslateService)
Parameters :
Name Type Optional
appState AppStateService No
translationStore TranslationStoreService No
alert AlertService No
translation TranslateService No

Methods

Async importTranslationKeys
importTranslationKeys()
Returns : any
onEditorInit
onEditorInit(_data: Monaco.editor.IStandaloneCodeEditor)
Parameters :
Name Type Optional
_data Monaco.editor.IStandaloneCodeEditor No
Returns : void
onValueChange
onValueChange(data: string)
Parameters :
Name Type Optional
data string No
Returns : void
Async refresh
refresh()
Returns : any
Async saveTranslations
saveTranslations()
Returns : any

Properties

availableLangs
Type : string[]
Default value : []
editorComponent
Type : EditorComponent
Decorators :
@ViewChild(EditorComponent)
editorOptions
Type : EditorComponent['editorOptions']
Default value : { language: 'json' }
isLoading
Default value : signal(false)
isValidJSON
Default value : computed(() => { const data = this.valueString(); try { JSON.parse(data); return true; } catch (e) { return false; } })
JSONSchema
Type : any
valueString
Default value : signal('')
<c8y-title translate>Localization</c8y-title>

<ng-container *ngIf="!isLoading(); else loading">
  <c8y-action-bar-item placement="right">
    <button
      class="btn btn-link"
      [disabled]="!isValidJSON()"
      (click)="saveTranslations()"
      data-cy="c8y-translation-editor--save-and-apply"
    >
      <i c8yIcon="save"></i>
      <span translate>Save & apply</span>
    </button>
  </c8y-action-bar-item>

  <c8y-action-bar-item placement="right">
    <button
      class="btn btn-link"
      [disabled]="!isValidJSON()"
      (click)="importTranslationKeys()"
      data-cy="c8y-translation-editor--import-translation-keys"
    >
      <i [c8yIcon]="'import'"></i>
      <span translate>Import translation keys from Apps</span>
    </button>
  </c8y-action-bar-item>

  <div class="card card--fullpage content-fullpage">
    <c8y-editor
      class="flex-grow"
      [editorOptions]="editorOptions"
      [ngModel]="valueString()"
      (ngModelChange)="onValueChange($event)"
      (editorInit)="onEditorInit($event)"
      monacoEditorMarkerValidator
    ></c8y-editor>
  </div>
</ng-container>

<ng-template #loading>
  <c8y-loading></c8y-loading>
</ng-template>

results matching ""

    No results matching ""