Skip to content
This repository was archived by the owner on Oct 31, 2022. It is now read-only.

reyesoft/ngx-jsonapi-material

Folders and files

NameName
Last commit message
Last commit date

Latest commit

160ced4 ยท Sep 1, 2021
Jun 11, 2021
May 17, 2021
Dec 20, 2019
Jun 11, 2021
Sep 1, 2021
Oct 11, 2018
Jun 11, 2021
Oct 11, 2018
Sep 17, 2019
Aug 30, 2021
Oct 11, 2018
Oct 11, 2018
Jan 26, 2021
May 19, 2021
Jan 11, 2021
Jan 14, 2019
Jun 11, 2021
Jan 14, 2019
Jun 11, 2021
Dec 17, 2019
Oct 11, 2018
May 19, 2021
Jun 11, 2021
Jun 11, 2021

Repository files navigation

ngx-jsonapi-material

angular jsonapi

CircleCI Codacy Badge npm version Coverage Status

This is a library (Angular 6+) of components based on Angular material, which makes use of jsonapi to work. ## Online demo

You can test library on this online example ๐Ÿ‘Œ ngx-jsonapi-material

demo

Data is obtained from Json Api Playground server.

Usage

Just install, configure and learn with examples.

First of all, it's advisable to read Jsonapi specification. Understanding JsonApi documents structure is recommended.

Installation

yarn add ngx-jsonapi-material --save
# or npm if you wish...

Directives

JamFloatingFilters

Selector: jam-floating-filters

Simple floating filters

<jam-floating-filter [hasAdvancedFilters]="false">
    <ng-container class="jam-filter-header">
        your code...
    </ng-container>
</jam-floating-filter>

more info

Local Demo App

You can run JsonApi Demo App locally following the next steps:

git clone git@github.com:reyesoft/ngx-jsonapi-material.git
cd ngx-jsonapi-material
yarn
yarn serve

We use as backend Json Api Playground.

Running cypress test in console

yarn cy:run

Running cypress test in browser

yarn cy:open

Creating a test

Go to the following location cypress -> integration, and create a file with the extension .spec.ts. The file contains the following structure:

describe('ListBase', () => {
    before(() => {
        cy.disableScreenshot();
    });
    it('ListBase integrity test', () => {
        cy.spyAuthors();
        cy.visit('/#/authors?pageSize=10');
    })
});

Simulate backend response in cypress

Go to the following location cypress -> fixtures, and create a file with the extension .json. In it we will have the supposed response from the backend.

{
    "meta": {
        "page": 1,
        "resources_per_page": 10,
        "total_resources": 11
    },
    "data": [
        {
            "type": "authors",
            "id": "14",
            "attributes": {
                "name": "Anais Carroll",
                "birthplace": "Taiwan",
                "date_of_birth": "1986-08-12",
                "date_of_death": "2000-10-05"
            },
            "relationships": {
                "photos": {
                    "data": []
                },
                "books": {
                    "data": [
                        {
                            "type": "books",
                            "id": "23"
                        },
                        {
                            "type": "books",
                            "id": "49"
                        }
                    ]
                }
            },
            "links": {
                "self": "/authors/14"
            }
        }
    ]
}

Colaborate

Check Environment development file ๐Ÿ˜‰.