@ovh-ux/ng-ui-router-layout

Enhance UI-Router by adding a layout decorator to deal with an UI Bootstrap modal instance.

Usage no npm install needed!

<script type="module">
  import ovhUxNgUiRouterLayout from 'https://cdn.skypack.dev/@ovh-ux/ng-ui-router-layout';
</script>

README

ng-ui-router-layout

Enhance UI-Router by adding a layout decorator.

npm version Downloads Dependencies Dev Dependencies

Install

$ yarn add @ovh-ux/ng-ui-router-layout

Usage

modal layout

This layout is now deprecated. Prefer using ouiModal layout.

// index.js
import angular from 'angular';
import ngUiRouterLayout from '@ovh-ux/ng-ui-router-layout';

angular.module('myApp', [ngUiRouterLayout]);

With controller and template

// routing.js
import controller from './controller';
import template from './template.html';

$stateProvider.state('state.name', {
  url,
  views: {
    modal: {
      controller,
      template,
    },
  },
  layout: 'modal',
});

With component

// routing.js
$stateProvider.state('state.name', {
  url,
  views: {
    modal: {
      component: 'awesomeModal',
    },
  },
  layout: 'modal',
});

With a component provider

// routing.js
$stateProvider.state('state.name', {
  url,
  views: {
    modal: {
      componentProvider: (predicate) =>
        predicate
          ? 'awesomeModalForTruePredicate'
          : 'awesomeModalForFalsePredicate',
    },
  },
  layout: 'modal',
});

ouiModal layout

See ouiModal layout.

Test

$ yarn test

Related

Contributing

Always feel free to help out! Whether it's filing bugs and feature requests or working on some of the open issues, our contributing guide will help get you started.

License

BSD-3-Clause © OVH SAS