6.0.6 • Published 3 months ago

@acpaas-ui/ngx-code-snippet v6.0.6

Weekly downloads
21
License
-
Repository
-
Last release
3 months ago

@acpaas-ui/ngx-code-snippet

This module contains a component for displaying a code snippet formatted by highlight.js

Dependencies

This package is build depending on:

Be aware that you need to install the highlight.js package yourself. We have tested and used version 9.10.0 in our example.

Check out the highlight.js documentation for more information on how to use it.

Usage

import { CodeSnippetModule } from '@acpaas-ui/ngx-code-snippet';

Documentation

Visit our documentation site for full how-to docs and guidelines

Code snippet list modules

API

NameDescriptionDocumentations
@Input() codeSnippet: string;-Add your code snippet here.
@Input() processMarkdown: boolean;falseWhen having some markdown that contains code snippets.
@Input() scrollable: boolean;trueBoolean for when code snippet should not have a horizontal scrollbar when the code snippet is not wide enough.

Example

A single code snippet
import { CodeSnippetModule } from '@acpaas-ui/ngx-code-snippet';

@NgModule({
    imports: [
        CodeSnippetModule
    ]
})

export class AppModule {}
public codeExampleJSON = `
    [
        {
            "title": "apples",
            "count": [12000, 20000],
            "description": {"text": "...", "sensitive": false}
        },
        {
            "title": "oranges",
            "count": [17500, null],
            "description": {"text": "...", "sensitive": false}
        }
    ]`;

public codeExampleJS = `
    function greetMe(yourName) {
        alert('Hello ' + yourName);
    }
    greetMe('World');`;
<aui-code-snippet [codeSnippet]="codeExampleJSON"></aui-code-snippet>
Multiple code snippets
public codeExamples = [this.codeExampleJS, this.codeExampleJSON];
<aui-code-snippet
    *ngFor="let codeExample of codeExamples"
    [codeSnippet]="codeExample"
></aui-code-snippet>

Process markdown with code snippets

If you have some markdown that contains code snippets, the component can also deal with that.

Create a service to get the markdown (this is just an example of getting a local markdown file):

import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/map';

@Injectable()
export class ContentService {
    constructor(
        private http: Http
    ) {}

    getMarkdown(): any {
        return this.http.get('/example.md')
        .map((res) => res.text());
    }
}
public mdExample: string;

constructor(
    private contentService: ContentService
) {
    contentService.getMarkdown().subscribe(data => this.mdExample = data);
}
<aui-code-snippet
    *ngIf="mdExample"
    [codeSnippet]="mdExample"
    [processMarkdown]="true"
></aui-code-snippet>

Contributing

Visit our Contribution Guidelines for more information on how to contribute.

6.0.6

3 months ago

6.0.5

4 months ago

6.0.3

8 months ago

6.0.2

9 months ago

6.0.4

7 months ago

6.0.0

11 months ago

6.0.0-beta.0

12 months ago

7.0.0-beta.1

12 months ago

5.0.0

3 years ago

4.6.1

3 years ago

4.6.0

3 years ago

4.0.0

4 years ago

4.0.0-rc.10

4 years ago

4.0.0-rc.2

4 years ago

4.0.0-rc.7

4 years ago

4.0.0-rc.6

4 years ago

4.0.0-rc.9

4 years ago

4.0.0-rc.8

4 years ago

4.0.0-rc.1

4 years ago