Skip to content

Commit

Permalink
ui: integrate rero-ils-ui angular project
Browse files Browse the repository at this point in the history
* Adds rero-ils-ui custom webpack configuration file.
* Removes old ui angular project and corresponding items.
* Updates scripts, manifest and tests accordingly.
* Adds protected admin (professional) view.
* Adds public-search view for integration testing.
* Adds webpack commands to the bootstrap script.

Co-Authored-by: Alicia Zangger <alicia.zangger@gmail.com>
Co-Authored-by: Johnny Mariéthoz <johnny.mariethoz@rero.ch>
Co-Authored-by: Sébastion Délèze <sebastien-deleze@rero.ch>
  • Loading branch information
4 people committed Nov 14, 2019
1 parent bf281c0 commit 3a9405f
Show file tree
Hide file tree
Showing 281 changed files with 514 additions and 26,499 deletions.
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,6 @@ celerybeat-schedule
# Environment variables
.env

# Project specific
rero_ils/static/js/rero_ils/ui

# Virtual studio pref
.vscode

Expand Down
18 changes: 5 additions & 13 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ include .coveragerc
include .dockerignore
include .editorconfig
include .tx/config
include ui/.tx/config
include docker/haproxy/Dockerfile
include docker/nginx/Dockerfile
include docker/postgres/Dockerfile
Expand All @@ -42,7 +41,6 @@ include *.rst
include *.sh
include *.txt
include *.yml
include ui/src/browserslist
include LICENSE
include Pipfile
include babel.ini
Expand All @@ -68,20 +66,14 @@ recursive-include rero_ils *.svg
recursive-include rero_ils *.scss
recursive-include rero_ils *.txt
recursive-include tests *.py
recursive-include ui *.py

# added by check_manifest.py
include *.json
include ui/yarn.lock

# added by check_manifest.py
recursive-include rero_ils *.ico
recursive-include ui *.editorconfig
recursive-include ui *.gitkeep
recursive-include ui *.html
recursive-include ui *.ico
recursive-include ui *.js
recursive-include ui *.json
recursive-include ui *.md
recursive-include ui *.scss
recursive-include ui *.ts


# added by check_manifest.py
recursive-include rero_ils *.babelrc
recursive-include rero_ils *.eslintignore
9 changes: 1 addition & 8 deletions check_license_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,7 @@ directories:
recursive:
- rero_ils
- tests
- ui/src/app
- ui/scripts
- ui/e2e

flat:
- .
exclude:
Expand All @@ -31,10 +29,6 @@ directories:
- rero_ils/modules/notifications/templates/email/due_soon
- rero_ils/modules/notifications/templates/email/overdue
- rero_ils/modules/notifications/templates/email/recall
js:
- rero_ils/static/js/rero_ils/ui
html:
- rero_ils/static/js/rero_ils/ui

files:
py:
Expand All @@ -54,7 +48,6 @@ copyrights:
- Copyright (C) 2015-2018 CERN
- Copyright (C) 2016 TIND

# TODO: cleaning after refactoring of the UI application
file_extensions:
py, ini, yml, cfg, conf, sh:
top:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

import { Loan } from './items';

describe('Loan', () => {
it('should create an instance', () => {
expect(new Loan()).toBeTruthy();
});
});
import '@rero/rero-ils-ui/dist/admin/runtime.js';
import '@rero/rero-ils-ui/dist/admin/polyfills.js';
import '@rero/rero-ils-ui/dist/admin/main.js';
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

export interface BriefView {
record: any;
}
import '@rero/rero-ils-ui/dist/public-search/runtime.js';
import '@rero/rero-ils-ui/dist/public-search/polyfills.js';
import '@rero/rero-ils-ui/dist/public-search/main.js';
25 changes: 0 additions & 25 deletions rero_ils/bundles.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@

import os

from flask_assets import Bundle
from invenio_assets import AngularGettextFilter, GlobBundle, NpmBundle
from pkg_resources import resource_filename

Expand Down Expand Up @@ -50,19 +49,6 @@ def catalog(domain):
)
"""Main CSS bundle with Bootstrap and Font-Awesome."""

ui_css = NpmBundle(
'scss/rero_ils/ui/ui.scss',
filters='node-scss,cleancssurl',
output='gen/rero_ils.ui_css.%(version)s.css',
npm={
'almond': '~0.3.3',
'bootstrap': '~4.2.1',
'font-awesome': '~4.7.0',
'jquery': '~1.9.1',
}
)
"""Additional CSS for ui frontend."""

i18n = GlobBundle(
catalog('messages'),
filters=AngularGettextFilter(catalog_name='reroilsAppTranslations'),
Expand All @@ -81,14 +67,3 @@ def catalog(domain):
},
output='gen/rero_ils.main.%(version)s.js'
)

ui_js = Bundle(
'node_modules/jquery/jquery.js',
'js/rero_ils/ui/runtime.js',
'js/rero_ils/ui/polyfills.js',
'js/rero_ils/ui/styles.js',
'js/rero_ils/ui/scripts.js',
'js/rero_ils/ui/main.js',
'node_modules/bootstrap/dist/js/bootstrap.bundle.js',
output='gen/rero_ils.ui_js.%(version)s.js'
)
8 changes: 2 additions & 6 deletions rero_ils/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -1070,13 +1070,7 @@ def _(x):
'de': ['gnd', 'rero', 'bnf'],
}

ADMIN_PERMISSION_FACTORY = 'rero_ils.permissions.admin_permission_factory'
ADMIN_BASE_TEMPLATE = BASE_TEMPLATE
RERO_ILS_ADMIN_CATEGORY_ICONS = {
"Admin & Monitoring": "fa fa-cogs",
"Catalogue": "fa fa-file-o",
"User Services": "fa fa-users"
}

#: Invenio circulation configuration.
CIRCULATION_ITEM_EXISTS = Item.get_record_by_pid
Expand Down Expand Up @@ -1199,3 +1193,5 @@ def _(x):
# Define the default system currency in used. Each organisation can override
# this parameter using the 'default_currency' field
RERO_ILS_DEFAULT_CURRENCY = 'CHF'

WEBPACKEXT_PROJECT = 'rero_ils.webpack:project'
27 changes: 0 additions & 27 deletions rero_ils/filter.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@

import babel
import dateparser
from flask import current_app


def format_date_filter(date_str, format='medium', locale='en'):
Expand Down Expand Up @@ -59,32 +58,6 @@ def jsondumps(data):
return json.dumps(data, indent=4)


def resource_can_create(record_type):
"""Evaluate if the resource can be created."""
adm = current_app.extensions['invenio-admin'].admin

def get_admin_view(record_type, menus):
"""Get admin view."""
for v in menus:
if v.is_category():
returned_view = get_admin_view(record_type, v.get_children())
if returned_view:
return returned_view
elif v._view.endpoint == record_type:
return v._view
return None

admin_view = get_admin_view(record_type, adm.menu())
if admin_view:
return admin_view.can_create
return False


def admin_menu_is_visible(admin_menu):
"""Evaluate if the menu is visible for a user."""
return any(m.is_accessible() for m in admin_menu)


def text_to_id(text):
"""Text to id."""
return re.sub(r'\W', '', text)

0 comments on commit 3a9405f

Please sign in to comment.