diff --git a/app/_i18n/i18n.properties b/app/_i18n/i18n.properties
index f2e76aa0..cdeebb9b 100644
--- a/app/_i18n/i18n.properties
+++ b/app/_i18n/i18n.properties
@@ -18,7 +18,6 @@ Stock = Stock
Price = Price
Description = Description
BookPrice = Book Price
-AddToOrder = Add to Order
Authors = Authors
Author = Author
@@ -26,32 +25,7 @@ AuthorID = Author ID
Name = Name
AuthorName = Author's Name
-Order = Order
-Orders = Orders
-OrderNumber = Order Number
-Total = Order Value
-
-OrderItem = Order Item
-OrderItems = Order Items
-Quantity = Quantity
-Amount = Amount
-
-ShippingAddress = Shipping Address
-ShippingAddresses = Shipping Addresses
-CityName = City Name
-HouseNumber = House Number
-StreetName = Street Name
-PostalCode = Postal Code
-Country = Country
-AddressID = Address ID
-BusinessPartner = Contact
-
Locale = Language
-
-Reviews = Reviews
-Review = Review
-Rating = Rating
-Subject = Subject
Date = Date
User = User
@@ -59,9 +33,4 @@ Text = Text
Image = Image
Genres = Genres
Genre = Genre
-
-AddReview = Add Review
-
-Notes = Notes
-Note = Note
ISBN = ISBN
diff --git a/app/addresses/fiori-service.cds b/app/addresses/fiori-service.cds
deleted file mode 100644
index b72a8d27..00000000
--- a/app/addresses/fiori-service.cds
+++ /dev/null
@@ -1,76 +0,0 @@
-using NotesService from '../../srv/notes-mashup';
-
-annotate NotesService.Addresses with @(UI : {
- LineItem : [
- {
- Value : ID,
- Label : '{i18n>ID}'
- },
- {
- Value : street,
- Label : '{i18n>StreetName}'
- },
- {
- Value : city,
- Label : '{i18n>CityName}'
- },
- {
- Value : country.code,
- Label : '{i18n>Country}'
- }
- ],
- HeaderInfo : {
- TypeName : '{i18n>ShippingAddress}',
- TypeNamePlural : '{i18n>ShippingAddresses}',
- Title : {Value : ID},
- Description : {Value : ID},
- },
- PresentationVariant : {
- Text : 'Default',
- Visualizations : ['@UI.LineItem']
- },
- Facets : [
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.FieldGroup#Address',
- Label : '{i18n>ShippingAddress}',
- },
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>Notes}',
- Target : 'notes/@UI.LineItem'
- }
- ],
- FieldGroup #Address : {Data : [
- {
- Value : street,
- Label : '{i18n>StreetName}'
- },
- {
- Value : houseNumber,
- Label : '{i18n>HouseNumber}'
- },
- {
- Value : postalCode,
- Label : '{i18n>PostalCode}'
- },
- {
- Value : city,
- Label : '{i18n>CityName}'
- },
- {
- Value : country.code,
- Label : '{i18n>Country}'
- }
- ]},
-}) {
- ID
- @title : '{i18n>ID}'
- @UI.HiddenFilter;
- street
- @title : '{i18n>StreetName}';
- city
- @title : '{i18n>CityName}';
- country
- @title : '{i18n>Country}';
-};
diff --git a/app/addresses/package.json b/app/addresses/package.json
deleted file mode 100644
index 8e75334b..00000000
--- a/app/addresses/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "addresses",
- "version": "1.0.0",
- "description": "",
- "main": "index.js",
- "scripts": {
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "keywords": [],
- "author": "",
- "license": "ISC"
-}
diff --git a/app/addresses/webapp/Component.js b/app/addresses/webapp/Component.js
deleted file mode 100644
index 5def6d12..00000000
--- a/app/addresses/webapp/Component.js
+++ /dev/null
@@ -1,3 +0,0 @@
-sap.ui.define(["sap/fe/core/AppComponent"], ac => ac.extend("addresses.Component", {
- metadata:{ manifest:'json' }
-}))
diff --git a/app/addresses/webapp/i18n/i18n.properties b/app/addresses/webapp/i18n/i18n.properties
deleted file mode 100644
index 32c07eed..00000000
--- a/app/addresses/webapp/i18n/i18n.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Show Shipping Addresses
-appDescription=Show Shipping Addresses - Sample Application
diff --git a/app/addresses/webapp/i18n/i18n_de.properties b/app/addresses/webapp/i18n/i18n_de.properties
deleted file mode 100644
index a150555b..00000000
--- a/app/addresses/webapp/i18n/i18n_de.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Zeige Lieferaddressen
-appDescription=Zeige Lieferaddressen - Beispielanwendung
diff --git a/app/addresses/webapp/index.html b/app/addresses/webapp/index.html
deleted file mode 100644
index a59fa7d2..00000000
--- a/app/addresses/webapp/index.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
-
- Show Shipping Addresses
-
-
-
-
-
-
-
diff --git a/app/addresses/webapp/manifest.json b/app/addresses/webapp/manifest.json
deleted file mode 100644
index 5266df52..00000000
--- a/app/addresses/webapp/manifest.json
+++ /dev/null
@@ -1,142 +0,0 @@
-{
- "_version": "1.8.0",
- "sap.app": {
- "id": "addresses",
- "type": "application",
- "title": "{{appTitle}}",
- "description": "{{appDescription}}",
- "applicationVersion": {
- "version": "1.0.0"
- },
- "dataSources": {
- "NotesService": {
- "uri": "/api/notes/",
- "type": "OData",
- "settings": {
- "odataVersion": "4.0"
- }
- }
- },
- "-sourceTemplate": {
- "id": "ui5template.basicSAPUI5ApplicationProject",
- "-id": "ui5template.smartTemplate",
- "-version": "1.40.12"
- },
- "crossNavigation": {
- "inbounds": {
- "Addresses-show": {
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "semanticObject": "Addresses",
- "action": "show"
- }
- }
- }
- },
- "sap.ui5": {
- "dependencies": {
- "libs": {
- "sap.fe.templates": {}
- }
- },
- "models": {
- "i18n": {
- "type": "sap.ui.model.resource.ResourceModel",
- "uri": "i18n/i18n.properties"
- },
- "": {
- "dataSource": "NotesService",
- "settings": {
- "synchronizationMode": "None",
- "operationMode": "Server",
- "autoExpandSelect" : true,
- "earlyRequests": true,
- "groupProperties": {
- "default": {
- "submit": "Auto"
- }
- }
- }
- }
- },
- "routing": {
- "routes": [
- {
- "pattern": ":?query:",
- "name": "AddressesList",
- "target": "AddressesList"
- },
- {
- "pattern": "Addresses({key}):?query:",
- "name": "AddressesDetails",
- "target": "AddressesDetails"
- },
- {
- "pattern": "Addresses({key})/notes({key2}):?query:",
- "name": "NotesDetails",
- "target": "NotesDetails"
- }
- ],
- "targets": {
- "AddressesList": {
- "type": "Component",
- "id": "AddressesList",
- "name": "sap.fe.templates.ListReport",
- "options": {
- "settings" : {
- "entitySet" : "Addresses",
- "navigation" : {
- "Addresses" : {
- "detail" : {
- "route" : "AddressesDetails"
- }
- }
- }
- }
- }
- },
- "AddressesDetails": {
- "type": "Component",
- "id": "AddressesDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet" : "Addresses",
- "navigation" : {
- "notes" : {
- "detail" : {
- "route" : "NotesDetails"
- }
- }
- }
- }
- }
- },
- "NotesDetails": {
- "type": "Component",
- "id": "NotesDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet": "Notes"
- }
- }
- }
- }
- },
- "contentDensities": {
- "compact": true,
- "cozy": true
- }
- },
- "sap.ui": {
- "technology": "UI5",
- "fullWidth": false
- },
- "sap.fiori": {
- "registrationIds": [],
- "archeType": "transactional"
- }
-}
diff --git a/app/admin/fiori-service.cds b/app/admin/fiori-service.cds
index c9fa5539..fb389131 100644
--- a/app/admin/fiori-service.cds
+++ b/app/admin/fiori-service.cds
@@ -97,41 +97,3 @@ annotate AdminService.Books.texts {
type : #fixed
}
}
-
-annotate AdminService.Books actions {
- @(
- Common.SideEffects : {
- TargetProperties : ['_it/order_ID'],
- TargetEntities : [_it]
- },
- cds.odata.bindingparameter.name : '_it'
- )
- addToOrder(order_ID @(
- title : '{i18n>Order}',
- Common : {ValueListMapping : {
- Label : '{i18n>Orders}',
- CollectionPath : 'Orders',
- Parameters : [
- {
- $Type : 'Common.ValueListParameterInOut',
- LocalDataProperty : order_ID,
- ValueListProperty : 'ID'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'OrderNo'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'createdBy'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'createdAt'
- }
- ],
- }}
- ),
- quantity @title : '{i18n>Quantity}'
- )
-}
diff --git a/app/appconfig/fioriSandboxConfig.json b/app/appconfig/fioriSandboxConfig.json
index 1dc45ef8..737450a1 100644
--- a/app/appconfig/fioriSandboxConfig.json
+++ b/app/appconfig/fioriSandboxConfig.json
@@ -38,51 +38,6 @@
"title": "Manage Books",
"description": "Add/edit/delete books"
}
- },
- {
- "id": "manage-orders",
- "tileType": "sap.ushell.ui.tile.StaticTile",
- "properties": {
- "targetURL": "#Orders-manage",
- "title": "Manage Orders",
- "description": "Find & manage orders"
- }
- },
- {
- "id": "manage-reviews",
- "tileType": "sap.ushell.ui.tile.StaticTile",
- "properties": {
- "targetURL": "#Reviews-manage",
- "title": "Manage Reviews",
- "description": "Add/edit/delete reviews"
- }
- }
- ]
- },
- {
- "id": "Shipping",
- "title": "Shipping",
- "isPreset": true,
- "isVisible": true,
- "isGroupLocked": false,
- "tiles": [
- {
- "id": "manage-notes",
- "tileType": "sap.ushell.ui.tile.StaticTile",
- "properties": {
- "targetURL": "#Notes-manage",
- "title": "Manage Notes",
- "description": "Read & create notes for addresses"
- }
- },
- {
- "id": "show-addresses",
- "tileType": "sap.ushell.ui.tile.StaticTile",
- "properties": {
- "targetURL": "#Addresses-display",
- "title": "Show Shipping Addresses",
- "description": "Find the right shipping address"
- }
}
]
}
@@ -124,58 +79,6 @@
"additionalInformation": "SAPUI5.Component=admin",
"url": "/admin/webapp"
}
- },
- "manage-orders": {
- "semanticObject": "Orders",
- "action": "manage",
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "resolutionResult": {
- "applicationType": "SAPUI5",
- "additionalInformation": "SAPUI5.Component=orders",
- "url": "/orders/webapp"
- }
- },
- "manage-reviews": {
- "semanticObject": "Reviews",
- "action": "manage",
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "resolutionResult": {
- "applicationType": "SAPUI5",
- "additionalInformation": "SAPUI5.Component=reviews",
- "url": "/reviews/webapp"
- }
- },
- "manage-notes": {
- "semanticObject": "Notes",
- "action": "manage",
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "resolutionResult": {
- "applicationType": "SAPUI5",
- "additionalInformation": "SAPUI5.Component=notes",
- "url": "/notes/webapp"
- }
- },
- "show-addresses": {
- "semanticObject": "Addresses",
- "action": "display",
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "resolutionResult": {
- "applicationType": "SAPUI5",
- "additionalInformation": "SAPUI5.Component=addresses",
- "url": "/addresses/webapp"
- }
}
}
}
diff --git a/app/browse/fiori-service.cds b/app/browse/fiori-service.cds
index 364b54b1..1a33365f 100644
--- a/app/browse/fiori-service.cds
+++ b/app/browse/fiori-service.cds
@@ -16,12 +16,7 @@ annotate CatalogService.Books with @(UI : {
Description : {Value : author.name}
},
Identification : [
- {Value : title},
- {
- $Type : 'UI.DataFieldForAction',
- Label : '{i18n>AddReview}',
- Action : 'CatalogService.addReview'
- }
+ {Value : title}
],
PresentationVariant : {
Text : 'Default',
@@ -32,16 +27,6 @@ annotate CatalogService.Books with @(UI : {
author_ID,
genre_ID
],
- HeaderFacets : [
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.DataPoint#rating'
- },
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.DataPoint#price'
- }
- ],
LineItem : [
{Value : title},
{
@@ -52,17 +37,7 @@ annotate CatalogService.Books with @(UI : {
Value : genre.name,
Label : '{i18n>Genre}'
},
- {
- $Type : 'UI.DataFieldForAnnotation',
- Target : '@UI.DataPoint#rating',
- Label : '{i18n>Rating}'
- },
{Value : price},
- {
- $Type : 'UI.DataFieldForAnnotation',
- Label : '{i18n>AddReview}',
- Target : '@UI.FieldGroup#AddReview'
- },
{Value: title},
{
Value: isbn,
@@ -79,19 +54,8 @@ annotate CatalogService.Books with @(UI : {
$Type : 'UI.ReferenceFacet',
Label : '{i18n>Description}',
Target : '@UI.FieldGroup#Descr'
- },
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>Reviews}',
- Target : 'reviews/@UI.LineItem'
}
],
- FieldGroup #AddReview : {Data : [{
- $Type : 'UI.DataFieldForAction',
- Label : '{i18n>AddReview}',
- Action : 'CatalogService.addReview',
- InvocationGrouping : #ChangeSet
- }, ]},
FieldGroup #General : {Data : [
{Value : title},
{Value : author_ID},
@@ -110,14 +74,6 @@ annotate CatalogService.Books with @(UI : {
DataPoint #price : {
Value : price,
Title : '{i18n>Price}'
- },
- DataPoint #rating : {
- Value : rating,
- Title : '{i18n>Rating}',
- Visualization : #Rating,
- MinimumValue : 0,
- MaximumValue : 5,
- TargetValue : 5
}
}) {
@Measures.ISOCurrency : currency_code
@@ -128,60 +84,4 @@ annotate CatalogService.Books.texts with @(UI : {LineItem : [
{Value : locale},
{Value : title},
{Value : descr}
-]});
-
-annotate CatalogService.Reviews with @(UI : {
- PresentationVariant : {
- $Type : 'UI.PresentationVariantType',
- SortOrder : [{
- $Type : 'Common.SortOrderType',
- Property : modifiedAt,
- Descending : true
- }, ],
- },
- LineItem : [
- {
- $Type : 'UI.DataFieldForAnnotation',
- Label : '{i18n>Rating}',
- Target : '@UI.DataPoint#rating'
- },
- {
- $Type : 'UI.DataFieldForAnnotation',
- Label : '{i18n>User}',
- Target : '@UI.FieldGroup#ReviewerAndDate'
- },
- {
- Value : title,
- Label : '{i18n>Title}'
- },
- {
- Value : text,
- Label : '{i18n>Text}'
- },
- ],
- DataPoint #rating : {
- Value : rating,
- Visualization : #Rating,
- MinimumValue : 0,
- MaximumValue : 5
- },
- FieldGroup #ReviewerAndDate : {Data : [
- {Value : createdBy},
- {Value : modifiedAt}
- ]}
-});
-
-annotate CatalogService.Books actions {
- @(
- Common.SideEffects : {
- TargetProperties : ['_it/rating'],
- TargetEntities : [
- _it,
- _it.reviews
- ]
- },
- cds.odata.bindingparameter.name : '_it',
- Core.OperationAvailable : _it.isReviewable
- )
- addReview(rating @title : '{i18n>Rating}', title @title : '{i18n>Title}', text @title : '{i18n>Text}')
-}
+]});
\ No newline at end of file
diff --git a/app/common.cds b/app/common.cds
index 787e85bf..26dc6d52 100644
--- a/app/common.cds
+++ b/app/common.cds
@@ -32,12 +32,7 @@ annotate my.Books with
{
Value : currency.symbol,
Label : ' '
- },
- {
- $Type : 'UI.DataFieldForAction',
- Label : '{i18n>AddToOrder}',
- Action : 'AdminService.addToOrder'
- },
+ }
]
}
) {
@@ -92,82 +87,6 @@ annotate my.Books with {
}
-////////////////////////////////////////////////////////////////////////////
-//
-// Reviews List
-//
-annotate my.Reviews with
-@(UI : {
- Identification : [
- {
- Value : ID,
- ![@UI.Hidden]
- },
- {Value : title}
- ],
- SelectionFields : [
- book_ID,
- rating
- ],
- LineItem : [
- {
- Value : modifiedAt,
- Label : 'Date'
- },
- {
- Value : createdBy,
- Label : '{i18n>User}'
- },
- {
- $Type : 'UI.DataFieldForAnnotation',
- Label : '{i18n>Book}',
- Target : '@UI.FieldGroup#BookAndAuthor'
- },
- {
- $Type : 'UI.DataFieldForAnnotation',
- Label : '{i18n>Rating}',
- Target : '@UI.DataPoint#rating'
- },
- {
- Value : title,
- Label : '{i18n>Review}'
- }
- ],
- FieldGroup #BookAndAuthor : {Data : [
- {Value : book.title},
- {Value : book.author.name}
- ]},
- DataPoint #rating : {
- Value : rating,
- Visualization : #Rating,
- MinimumValue : 0,
- MaximumValue : 5
- }
-});
-
-annotate my.Reviews with {
- ID
- @title : '{i18n>ID}'
- @UI.HiddenFilter;
- title
- @title : '{i18n>Title}';
- book
- @ValueList.entity : 'Books'
- @title : '{i18n>Book}'
- @Common : {
- Text : book.title,
- TextArrangement : #TextOnly
- };
- date
- @title : '{i18n>Date}';
- rating
- @title : '{i18n>Rating}';
- text
- @title : '{i18n>Text}'
- @UI.MultiLineText;
-}
-
-
////////////////////////////////////////////////////////////////////////////
//
// Genres List
diff --git a/app/index.cds b/app/index.cds
index dcbf40e5..ccba0587 100644
--- a/app/index.cds
+++ b/app/index.cds
@@ -4,8 +4,4 @@
using from './admin/fiori-service';
using from './browse/fiori-service';
-using from './orders/fiori-service';
-using from './reviews/fiori-service';
-using from './notes/fiori-service';
-using from './addresses/fiori-service';
using from './common';
diff --git a/app/notes/fiori-service.cds b/app/notes/fiori-service.cds
deleted file mode 100644
index f2dcd295..00000000
--- a/app/notes/fiori-service.cds
+++ /dev/null
@@ -1,115 +0,0 @@
-using NotesService from '../../srv/notes-mashup';
-
-annotate NotesService.Notes with @odata.draft.enabled @(UI : {
- LineItem : [
- {
- Value : address.street,
- Label : '{i18n>StreetName}'
- },
- {
- Value : address.city,
- Label : '{i18n>CityName}'
- },
- {
- Value : note,
- Label : '{i18n>Note}'
- }
- ],
- HeaderInfo : {
- TypeName : '{i18n>Note}',
- TypeNamePlural : '{i18n>Notes}',
- Title : {Value : '{i18n>Note}'},
- Description : {Value : ID},
- },
- PresentationVariant : {
- Text : 'Default',
- Visualizations : ['@UI.LineItem']
- },
- Facets : [
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.FieldGroup#Note',
- Label : '{i18n>Note}',
- },
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.FieldGroup#Address',
- Label : '{i18n>ShippingAddress}',
- }
- ],
- FieldGroup #Note : {Data : [
- {
- Value : note,
- Label : '{i18n>Note}'
- }
- ]},
- FieldGroup #Address : {Data : [
- {
- Value : address.ID,
- Label : '{i18n>ID}'
- },
- {
- Value : address.street,
- Label : '{i18n>StreetName}'
- },
- {
- Value : address.houseNumber,
- Label : '{i18n>HouseNumber}'
- },
- {
- Value : address.postalCode,
- Label : '{i18n>PostalCode}'
- },
- {
- Value : address.city,
- Label : '{i18n>CityName}'
- },
- {
- Value : address.country,
- Label : '{i18n>Country}'
- }
- ]},
-}) {
- ID
- @title : '{i18n>ID}'
- @UI.HiddenFilter;
- note
- @title : '{i18n>Note}'
- @UI.MultiLineText;
- address
- @(Common : {
- FieldControl : #Mandatory,
- ValueList : {
- CollectionPath : 'Addresses',
- Label : '{i18n>ShippingAddress}',
- SearchSupported : false,
- Parameters : [
- {
- $Type : 'Common.ValueListParameterOut',
- LocalDataProperty : 'address_ID',
- ValueListProperty : 'ID',
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'postalCode'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'city'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'country'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'street'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'houseNumber'
- },
- ]
- }
- });
-};
diff --git a/app/notes/package.json b/app/notes/package.json
deleted file mode 100644
index 555c053e..00000000
--- a/app/notes/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "notes",
- "version": "1.0.0",
- "description": "",
- "main": "index.js",
- "scripts": {
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "keywords": [],
- "author": "",
- "license": "ISC"
-}
diff --git a/app/notes/webapp/Component.js b/app/notes/webapp/Component.js
deleted file mode 100644
index aa5843fc..00000000
--- a/app/notes/webapp/Component.js
+++ /dev/null
@@ -1,3 +0,0 @@
-sap.ui.define(["sap/fe/core/AppComponent"], ac => ac.extend("notes.Component", {
- metadata:{ manifest:'json' }
-}))
diff --git a/app/notes/webapp/i18n/i18n.properties b/app/notes/webapp/i18n/i18n.properties
deleted file mode 100644
index e4d3ed2f..00000000
--- a/app/notes/webapp/i18n/i18n.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Manage Notes
-appDescription=Manage Notes - Sample Application
diff --git a/app/notes/webapp/i18n/i18n_de.properties b/app/notes/webapp/i18n/i18n_de.properties
deleted file mode 100644
index 5451c4e2..00000000
--- a/app/notes/webapp/i18n/i18n_de.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Administriere Notizen
-appDescription=Administriere Notizen - Beispielanwendung
diff --git a/app/notes/webapp/index.html b/app/notes/webapp/index.html
deleted file mode 100644
index d91b7503..00000000
--- a/app/notes/webapp/index.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
-
- Manage Notes
-
-
-
-
-
-
-
diff --git a/app/notes/webapp/manifest.json b/app/notes/webapp/manifest.json
deleted file mode 100644
index f75a99b2..00000000
--- a/app/notes/webapp/manifest.json
+++ /dev/null
@@ -1,120 +0,0 @@
-{
- "_version": "1.8.0",
- "sap.app": {
- "id": "notes",
- "type": "application",
- "title": "{{appTitle}}",
- "description": "{{appDescription}}",
- "applicationVersion": {
- "version": "1.0.0"
- },
- "dataSources": {
- "NotesService": {
- "uri": "/api/notes/",
- "type": "OData",
- "settings": {
- "odataVersion": "4.0"
- }
- }
- },
- "-sourceTemplate": {
- "id": "ui5template.basicSAPUI5ApplicationProject",
- "-id": "ui5template.smartTemplate",
- "-version": "1.40.12"
- },
- "crossNavigation": {
- "inbounds": {
- "Notes-manage": {
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "semanticObject": "Notes",
- "action": "manage"
- }
- }
- }
- },
- "sap.ui5": {
- "dependencies": {
- "libs": {
- "sap.fe.templates": {}
- }
- },
- "models": {
- "i18n": {
- "type": "sap.ui.model.resource.ResourceModel",
- "uri": "i18n/i18n.properties"
- },
- "": {
- "dataSource": "NotesService",
- "settings": {
- "synchronizationMode": "None",
- "operationMode": "Server",
- "autoExpandSelect" : true,
- "earlyRequests": true,
- "groupProperties": {
- "default": {
- "submit": "Auto"
- }
- }
- }
- }
- },
- "routing": {
- "routes": [
- {
- "pattern": ":?query:",
- "name": "NotesList",
- "target": "NotesList"
- },
- {
- "pattern": "Notes({key}):?query:",
- "name": "NotesDetails",
- "target": "NotesDetails"
- }
- ],
- "targets": {
- "NotesList": {
- "type": "Component",
- "id": "NotesList",
- "name": "sap.fe.templates.ListReport",
- "options": {
- "settings" : {
- "entitySet" : "Notes",
- "navigation" : {
- "Notes" : {
- "detail" : {
- "route" : "NotesDetails"
- }
- }
- }
- }
- }
- },
- "NotesDetails": {
- "type": "Component",
- "id": "NotesDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet" : "Notes"
- }
- }
- }
- }
- },
- "contentDensities": {
- "compact": true,
- "cozy": true
- }
- },
- "sap.ui": {
- "technology": "UI5",
- "fullWidth": false
- },
- "sap.fiori": {
- "registrationIds": [],
- "archeType": "transactional"
- }
-}
diff --git a/app/orders/fiori-service.cds b/app/orders/fiori-service.cds
deleted file mode 100644
index 4b783605..00000000
--- a/app/orders/fiori-service.cds
+++ /dev/null
@@ -1,278 +0,0 @@
-/*
- Annotations for the Manage Orders App
-*/
-
-using AdminService from '../../srv/admin-service';
-
-
-////////////////////////////////////////////////////////////////////////////
-//
-// Common
-//
-annotate AdminService.OrderItems with {
- book @(
- Common : {
- Text : book.title,
- FieldControl : #Mandatory
- },
- ValueList.entity : 'Books',
- );
- quantity @(Common.FieldControl : #Mandatory);
-}
-
-annotate AdminService.Orders with {
- shippingAddress @(Common : {
- FieldControl : #Mandatory,
- ValueList : {
- CollectionPath : 'Addresses',
- Label : 'Addresses',
- SearchSupported : 'true',
- Parameters : [
- {
- $Type : 'Common.ValueListParameterOut',
- LocalDataProperty : 'shippingAddress_ID',
- ValueListProperty : 'ID'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'postalCode'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'city'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'country'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'street'
- },
- {
- $Type : 'Common.ValueListParameterDisplayOnly',
- ValueListProperty : 'houseNumber'
- },
- ]
- }
- });
-}
-
-////////////////////////////////////////////////////////////////////////////
-//
-// UI
-//
-annotate AdminService.Orders with @(
- UI : {
- ////////////////////////////////////////////////////////////////////////////
- //
- // Lists of Orders
- //
- SelectionFields : [
- createdAt,
- createdBy
- ],
- LineItem : [
- {
- Value : createdBy,
- Label : '{i18n>Customer}'
- },
- {
- Value : total,
- Label : '{i18n>Total}'
- },
- {
- Value : createdAt,
- Label : '{i18n>Date}'
- }
- ],
- ////////////////////////////////////////////////////////////////////////////
- //
- // Order Details
- //
- HeaderInfo : {
- TypeName : '{i18n>Order}',
- TypeNamePlural : '{i18n>Orders}',
- Title : {
- Label : '{i18n>OrderNumber}', //A label is possible but it is not considered on the ObjectPage yet
- Value : OrderNo
- },
- Description : {Value : createdBy}
- },
- Identification : [ //Is the main field group
- {
- Value : createdBy,
- Label : '{i18n>Customer}'
- },
- {
- Value : createdAt,
- Label : '{i18n>Date}'
- },
- {Value : OrderNo},
- {
- Value : 'shippingAddress',
- Label : '{i18n>ID}'
- }
- ],
- HeaderFacets : [
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>Created}',
- Target : '@UI.FieldGroup#Created'
- },
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>Modified}',
- Target : '@UI.FieldGroup#Modified'
- },
- ],
- Facets : [
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>ShippingAddress}',
- Target : '@UI.FieldGroup#ShippingAddress'
- },
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>Details}',
- Target : '@UI.FieldGroup#Details'
- },
- {
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>OrderItems}',
- Target : 'Items/@UI.LineItem'
- },
- ],
- FieldGroup #Details : {Data : [
- {
- Value : total,
- Label : '{i18n>Total}'
- },
- {
- Value : currency_code,
- Label : '{i18n>Currency}'
- }
- ]},
- FieldGroup #Created : {Data : [
- {Value : createdBy},
- {Value : createdAt},
- ]},
- FieldGroup #Modified : {Data : [
- {Value : modifiedBy},
- {Value : modifiedAt},
- ]},
- FieldGroup #ShippingAddress : {Data : [
- {
- Value : shippingAddress_ID,
- Label : '{i18n>ShippingAddress}'
- },
- {
- Value : shippingAddress.houseNumber,
- Label : '{i18n>HouseNumber}'
- },
- {
- Value : shippingAddress.street,
- Label : '{i18n>StreetName}'
- },
- {
- Value : shippingAddress.city,
- Label : '{i18n>CityName}'
- },
- {
- Value : shippingAddress.postalCode,
- Label : '{i18n>PostalCode}'
- },
- ]}
- },
- Common : {
- SideEffects #ItemsChanges : {
- SourceEntities : [Items],
- TargetProperties : ['total']
- },
- SideEffects #CurrencyChanges : {
- SourceProperties : [currency_code],
- TargetEntities : [currency]
- },
- SideEffects #AddressChanges : {
- SourceProperties : [shippingAddress_ID],
- TargetEntities : [shippingAddress]
- }
- }
-) {
- createdAt @UI.HiddenFilter : false;
- createdBy @UI.HiddenFilter : false;
- total
- @Common.FieldControl : #ReadOnly
- @Measures.ISOCurrency : currency.code; //Bind the currency field to the amount field
-//In all services we always find currency as the code and not as an object that contains a property code
-//it seems to work but at least to me this is unconventional modeling.
-};
-
-//The enity types name is AdminService.my_bookshop_OrderItems
-//The annotations below are not generated in edmx WHY?
-annotate AdminService.OrderItems with @(
- UI : {
- HeaderInfo : {
- TypeName : '{i18n>OrderItem}',
- TypeNamePlural : '{i18n>OrderItems}',
- Title : {Value : book.title},
- Description : {Value : book.descr}
- },
- // There is no filterbar for items so the selctionfileds is not needed
- SelectionFields : [book_ID],
- ////////////////////////////////////////////////////////////////////////////
- //
- // Lists of OrderItems
- //
- LineItem : [
- {
- Value : book_ID,
- Label : '{i18n>Books}'
- },
- {
- Value : quantity,
- Label : '{i18n>Quantity}'
- },
- {
- Value : amount,
- Label : '{i18n>Amount}'
- }
- ],
- Identification : [ //Is the main field group
- //{Value: ID, Label:'{i18n>ID}'}, //A guid shouldn't be on the UI
- {
- Value : book_ID,
- Label : '{i18n>Book}'
- },
- {
- Value : quantity,
- Label : '{i18n>Quantity}'
- },
- {
- Value : amount,
- Label : '{i18n>Amount}'
- }
- ],
- Facets : [{
- $Type : 'UI.ReferenceFacet',
- Label : '{i18n>OrderItem}',
- Target : '@UI.Identification'
- }, ],
- },
- Common : {
- SideEffects #AmountChanges : {
- SourceProperties : [quantity],
- TargetProperties : ['amount']
- },
- SideEffects #BookChanges : {
- SourceProperties : [book_ID],
- TargetEntities : [book],
- TargetProperties : ['amount']
- }
- }
-) {
- amount
- @Common.FieldControl : #ReadOnly;
-//ERROR ALERT: The following line refering to the parents currency code will lead to a server error
-//@Measures.ISOCurrency:parent.currency.code; //Bind the currency field to the quantity field of the parent
-};
diff --git a/app/orders/package.json b/app/orders/package.json
deleted file mode 100644
index eecfe0e9..00000000
--- a/app/orders/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "orders",
- "version": "1.0.0",
- "description": "",
- "main": "index.js",
- "scripts": {
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "keywords": [],
- "author": "",
- "license": "ISC"
-}
diff --git a/app/orders/webapp/Component.js b/app/orders/webapp/Component.js
deleted file mode 100644
index 2417b681..00000000
--- a/app/orders/webapp/Component.js
+++ /dev/null
@@ -1,3 +0,0 @@
-sap.ui.define(["sap/fe/core/AppComponent"], ac => ac.extend("orders.Component", {
- metadata:{ manifest:'json' }
-}))
diff --git a/app/orders/webapp/i18n/i18n.properties b/app/orders/webapp/i18n/i18n.properties
deleted file mode 100644
index 441b619d..00000000
--- a/app/orders/webapp/i18n/i18n.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Manage Orders
-appDescription=Manage Orders - Sample Application
diff --git a/app/orders/webapp/i18n/i18n_de.properties b/app/orders/webapp/i18n/i18n_de.properties
deleted file mode 100644
index df522267..00000000
--- a/app/orders/webapp/i18n/i18n_de.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Administriere Bestellungen
-appDescription=Administriere Bestellungen - Beispielanwendung
diff --git a/app/orders/webapp/index.html b/app/orders/webapp/index.html
deleted file mode 100644
index 1b3b7355..00000000
--- a/app/orders/webapp/index.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
-
- Manage Orders
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/orders/webapp/manifest.json b/app/orders/webapp/manifest.json
deleted file mode 100644
index 758e31f2..00000000
--- a/app/orders/webapp/manifest.json
+++ /dev/null
@@ -1,184 +0,0 @@
-{
- "_version": "1.8.0",
- "sap.app": {
- "id": "orders",
- "type": "application",
- "title": "{{appTitle}}",
- "description": "{{appDescription}}",
- "applicationVersion": {
- "version": "1.0.0"
- },
- "dataSources": {
- "AdminService": {
- "uri": "/api/admin/",
- "type": "OData",
- "settings": {
- "odataVersion": "4.0"
- }
- }
- },
- "-sourceTemplate": {
- "id": "ui5template.basicSAPUI5ApplicationProject",
- "-id": "ui5template.smartTemplate",
- "-version": "1.40.12"
- },
- "crossNavigation": {
- "inbounds": {
- "Orders-manage": {
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "semanticObject": "Orders",
- "action": "manage"
- }
- }
- }
- },
- "sap.ui5": {
- "dependencies": {
- "libs": {
- "sap.fe.templates": {}
- }
- },
- "models": {
- "i18n": {
- "type": "sap.ui.model.resource.ResourceModel",
- "uri": "i18n/i18n.properties"
- },
- "": {
- "dataSource": "AdminService",
- "settings": {
- "synchronizationMode": "None",
- "operationMode": "Server",
- "autoExpandSelect" : true,
- "earlyRequests": true,
- "groupProperties": {
- "default": {
- "submit": "Auto"
- }
- }
- }
- }
- },
- "routing": {
- "routes": [
- {
- "pattern": ":?query:",
- "name": "OrdersList",
- "target": "OrdersList"
- },
- {
- "pattern": "Orders({key}):?query:",
- "name": "OrdersDetails",
- "target": "OrdersDetails"
- },
- {
- "pattern": "Orders({boo})/Items({boo2}):?query:",
- "name": "OrderItemsDetails",
- "target": "OrderItemsDetails"
- },
- {
- "pattern": "Books({key}):?query:",
- "name": "BooksDetails",
- "target": "BooksDetails"
- }
- ],
- "targets": {
- "OrdersList": {
- "type": "Component",
- "id": "OrdersList",
- "name": "sap.fe.templates.ListReport",
- "options": {
- "settings" : {
- "entitySet" : "Orders",
- "navigation" : {
- "Orders" : {
- "detail" : {
- "route" : "OrdersDetails"
- }
- }
- }
- }
- }
- },
- "OrdersDetails": {
- "type": "Component",
- "id": "OrdersDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet": "Orders",
- "navigation" : {
- "Items": {
- "detail": {
- "route": "OrderItemsDetails"
- }
- },
- "book": {
- "detail": {
- "route": "BooksDetails"
- }
- },
- "dummy": {
- "detail": {
- "route": "BooksDetails"
- }
- }
- }
- }
- }
- },
- "OrderItemsDetails": {
- "type": "Component",
- "id": "OrderItemsDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet": "OrderItems"
- }
- }
- },
- "BooksDetails": {
- "type": "Component",
- "id": "BooksDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet": "Books",
- "navigation": {
- "author": {
- "detail": {
- "route": "AuthorsDetails"
- }
- }
- }
- }
- }
- },
- "AuthorsDetails": {
- "type": "Component",
- "id": "AuthorsDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet": "Authors"
- }
- }
- }
- }
- },
- "contentDensities": {
- "compact": true,
- "cozy": true
- }
- },
- "sap.ui": {
- "technology": "UI5",
- "fullWidth": false
- },
- "sap.fiori": {
- "registrationIds": [],
- "archeType": "transactional"
- }
-}
diff --git a/app/reviews/fiori-service.cds b/app/reviews/fiori-service.cds
deleted file mode 100644
index ee77c5c4..00000000
--- a/app/reviews/fiori-service.cds
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- Annotations for the Browse Books App
-*/
-
-using ReviewService from '../../srv/review-service';
-
-annotate ReviewService.Reviews with @(UI : {
- HeaderInfo : {
- TypeName : '{i18n>Review}',
- TypeNamePlural : '{i18n>Reviews}',
- Title : {Value : title},
- Description : {Value : createdBy},
- },
- PresentationVariant : {
- Text : 'Default',
- SortOrder : [{
- Property : modifiedAt,
- Descending : true
- }],
- Visualizations : ['@UI.LineItem']
- },
- SelectionFields : [
- book_ID,
- rating
- ],
- HeaderFacets : [{
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.DataPoint#rating'
- }, ],
- Facets : [
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.FieldGroup#General',
- Label : '{i18n>General}'
- },
- {
- $Type : 'UI.ReferenceFacet',
- Target : '@UI.FieldGroup#Review',
- Label : '{i18n>Review}',
- }
- ],
- FieldGroup #General : {Data : [
- {
- Value : createdAt,
- Label : '{i18n>Created}'
- },
- {
- Value : createdBy,
- Label : '{i18n>CreatedBy}'
- },
- {
- Value : modifiedAt,
- Label : '{i18n>Modified}'
- },
- {
- Value : modifiedBy,
- Label : '{i18n>ModifiedBy}'
- },
- {Value : book_ID},
- ]},
- FieldGroup #Review : {Data : [
- {
- Value : rating,
- Label : '{i18n>Rating}'
- },
- {
- Value : title,
- Label : '{i18n>Title}'
- },
- {
- Value : text,
- Label : '{i18n>Text}'
- }
- ]},
- FieldGroup #BookAndAuthor : {Data : [
- {Value : book.title},
- {Value : book.author.name}
- ]},
- DataPoint #rating : {
- Title : '{i18n>Rating}',
- Value : rating,
- Visualization : #Rating,
- MinimumValue : 0,
- MaximumValue : 5
- }
-}) {
- rating @title : '{i18n>Rating}';
- title @title : '{i18n>Title}';
- text @title : '{i18n>Text}' @UI.MultiLineText;
-};
diff --git a/app/reviews/package.json b/app/reviews/package.json
deleted file mode 100644
index 22ad679d..00000000
--- a/app/reviews/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "reviews",
- "version": "1.0.0",
- "description": "",
- "main": "index.js",
- "scripts": {
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "keywords": [],
- "author": "",
- "license": "ISC"
-}
diff --git a/app/reviews/webapp/Component.js b/app/reviews/webapp/Component.js
deleted file mode 100644
index 4140a28e..00000000
--- a/app/reviews/webapp/Component.js
+++ /dev/null
@@ -1,3 +0,0 @@
-sap.ui.define(["sap/fe/core/AppComponent"], ac => ac.extend("reviews.Component", {
- metadata:{ manifest:'json' }
-}))
diff --git a/app/reviews/webapp/i18n/i18n.properties b/app/reviews/webapp/i18n/i18n.properties
deleted file mode 100644
index 9aadf3e7..00000000
--- a/app/reviews/webapp/i18n/i18n.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Manage Reviews
-appDescription=Manage Reviews - Sample Application
diff --git a/app/reviews/webapp/i18n/i18n_de.properties b/app/reviews/webapp/i18n/i18n_de.properties
deleted file mode 100644
index 1cc53e4c..00000000
--- a/app/reviews/webapp/i18n/i18n_de.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appTitle=Administriere Reviews
-appDescription=Administriere Reviews - Beispielanwendung
diff --git a/app/reviews/webapp/index.html b/app/reviews/webapp/index.html
deleted file mode 100644
index d2215894..00000000
--- a/app/reviews/webapp/index.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
-
- Manage Reviews
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/reviews/webapp/manifest.json b/app/reviews/webapp/manifest.json
deleted file mode 100644
index 78dd8f8c..00000000
--- a/app/reviews/webapp/manifest.json
+++ /dev/null
@@ -1,142 +0,0 @@
-{
- "_version": "1.8.0",
- "sap.app": {
- "id": "reviews",
- "type": "application",
- "title": "{{appTitle}}",
- "description": "{{appDescription}}",
- "applicationVersion": {
- "version": "1.0.0"
- },
- "dataSources": {
- "ReviewService": {
- "uri": "/api/review/",
- "type": "OData",
- "settings": {
- "odataVersion": "4.0"
- }
- }
- },
- "-sourceTemplate": {
- "id": "ui5template.basicSAPUI5ApplicationProject",
- "-id": "ui5template.smartTemplate",
- "-version": "1.40.12"
- },
- "crossNavigation": {
- "inbounds": {
- "Reviews-manage": {
- "signature": {
- "parameters": {},
- "additionalParameters": "allowed"
- },
- "semanticObject": "Reviews",
- "action": "manage"
- }
- }
- }
- },
- "sap.ui5": {
- "dependencies": {
- "libs": {
- "sap.fe.templates": {}
- }
- },
- "models": {
- "i18n": {
- "type": "sap.ui.model.resource.ResourceModel",
- "uri": "i18n/i18n.properties"
- },
- "": {
- "dataSource": "ReviewService",
- "settings": {
- "synchronizationMode": "None",
- "operationMode": "Server",
- "autoExpandSelect" : true,
- "earlyRequests": true,
- "groupProperties": {
- "default": {
- "submit": "Auto"
- }
- }
- }
- }
- },
- "routing": {
- "routes": [
- {
- "pattern": ":?query:",
- "name": "ReviewsList",
- "target": "ReviewsList"
- },
- {
- "pattern": "Reviews({key}):?query:",
- "name": "ReviewsDetails",
- "target": "ReviewsDetails"
- },
- {
- "pattern": "Reviews({key}/book({key2}):?query:",
- "name": "BooksDetails",
- "target": "BooksDetails"
- }
- ],
- "targets": {
- "ReviewsList": {
- "type": "Component",
- "id": "ReviewsList",
- "name": "sap.fe.templates.ListReport",
- "options": {
- "settings" : {
- "entitySet" : "Reviews",
- "navigation" : {
- "Reviews" : {
- "detail" : {
- "route" : "ReviewsDetails"
- }
- }
- }
- }
- }
- },
- "ReviewsDetails": {
- "type": "Component",
- "id": "ReviewsDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet" : "Reviews",
- "navigation" : {
- "Books" : {
- "detail" : {
- "route" : "BooksDetails"
- }
- }
- }
- }
- }
- },
- "BooksDetails": {
- "type": "Component",
- "id": "BooksDetails",
- "name": "sap.fe.templates.ObjectPage",
- "options": {
- "settings" : {
- "entitySet" : "Books"
- }
- }
- }
- }
- },
- "contentDensities": {
- "compact": true,
- "cozy": true
- }
- },
- "sap.ui": {
- "technology": "UI5",
- "fullWidth": false
- },
- "sap.fiori": {
- "registrationIds": [],
- "archeType": "transactional"
- }
-}
diff --git a/app/vue/app.js b/app/vue/app.js
deleted file mode 100644
index 8b4a6f05..00000000
--- a/app/vue/app.js
+++ /dev/null
@@ -1,122 +0,0 @@
-/* global Vue axios */ //> from index.html
-const $ = (sel) => document.querySelector(sel);
-
-const httpClient = axios.create({
- withCredentials: true,
-});
-
-// adding csrf token to request headers
-axios
- .head("/api/browse", {
- headers: {
- "X-CSRF-Token": "Fetch",
- "X-Requested-With": "XMLHttpRequest",
- },
- })
- .then((res) => {
- xcsrfToken = res.headers["x-csrf-token"];
- httpClient.defaults.headers.common["X-CSRF-Token"] = xcsrfToken;
- });
-
-const GET = (url) => httpClient.get("/api/browse" + url);
-const POST = (cmd, data) => httpClient.post("/api/browse" + cmd, data);
-
-const bookshop = new Vue({
- el: "#app",
-
- data: {
- books: [],
- reviews: [],
- book: undefined,
- review: undefined,
- order: { quantity: 1, succeeded: "", failed: "" },
- message: {},
- Ratings: Object.entries({
- 5: "★★★★★",
- 4: "★★★★",
- 3: "★★★",
- 2: "★★",
- 1: "★",
- }).reverse(),
- },
-
- methods: {
- searchBooks: ({ target: { value: v } }) =>
- bookshop.fetchBooks(v && "&$search=" + v),
-
- searchReviews: ({ target: { value: v } }) =>
- bookshop.fetchReviews(v && "?$search=" + v),
-
- async fetchBooks(etc = "") {
- const { data } = await GET(`/Books?$expand=author,genre,currency${etc}`);
- bookshop.books = data.value;
- },
-
- async fetchReviews(etc = "") {
- const { data } = await GET(
- `/Books(ID=${bookshop.book.ID})/reviews${etc}`
- );
- bookshop.reviews = data.value;
- },
-
- async inspectBook(eve) {
- const book = (bookshop.book =
- bookshop.books[eve.currentTarget.rowIndex - 1]);
- const res = await GET(
- `/Books(ID=${book.ID})?$expand=reviews&$select=descr,stock`
- );
- Object.assign(book, res.data);
- bookshop.order = { quantity: 1 };
- bookshop.reviews = book.reviews;
- setTimeout(() => $("form > input").focus(), 111);
- },
-
- async submitOrder() {
- const { book, order } = bookshop,
- quantity = parseInt(bookshop.order.quantity) || 1; // REVISIT: Okra should be less strict
- try {
- const res = await POST(`/submitOrder`, { quantity, book: book.ID });
- book.stock = res.data.stock;
- bookshop.order = {
- quantity,
- succeeded: `Successfully ordered ${quantity} item(s).`,
- };
- } catch (e) {
- bookshop.order = { quantity, failed: e.response.data.error.message };
- }
- },
-
- async inspectReview(eve) {
- bookshop.review = bookshop.reviews[eve.currentTarget.rowIndex - 1];
- },
-
- newReview() {
- bookshop.review = {};
- bookshop.message = {};
- },
-
- async submitReview() {
- const review = bookshop.review;
- review.rating = parseInt(review.rating); // REVISIT: Okra should be less strict
- const payload = {
- rating: review.rating,
- title: review.title,
- text: review.text,
- };
- try {
- await POST(
- `/Books(ID=${bookshop.book.ID})/CatalogService.addReview`,
- payload
- );
- bookshop.message = {
- succeeded: "Your review was submitted successfully. Thanks.",
- };
- } catch (e) {
- bookshop.message = { failed: e.response.data.error.message };
- }
- },
- },
-});
-
-// initially fill list of books
-bookshop.fetchBooks();
diff --git a/app/vue/index.html b/app/vue/index.html
deleted file mode 100644
index f103c836..00000000
--- a/app/vue/index.html
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
- Capire Bookshop
-
-
-
-
-
-
-
-
-
-
{{ document.title }}
-
-
-
-
-
- Book |
- Author |
- Genre |
- Rating |
- Price |
-
-
- {{ book.title }} |
- {{ book.author.name }} |
- {{ book.genre.name }} |
-
- {{ ('★'.repeat(Math.round(book.rating))+'☆☆☆☆☆').slice(0,5) }}
- |
- {{ book.currency && book.currency.symbol }} {{ book.price }} |
-
-
-
-
-
-
-
{{ book.title }}
-
{{ book.descr }}
-
-
Reviews
-
-
-
-
-
- Date |
- User |
- Rating |
- Title |
-
-
- {{ review.modifiedAt | datetime }} |
- {{ review.createdBy }} |
-
- {{ ('★'.repeat(Math.round(review.rating))+'☆☆☆☆☆').slice(0,5) }}
- |
- {{ review.title }} |
-
-
-
-
-
-
-
- ( click on a row to see details... )
-
-
-
-
- ( click on a row to see details... )
-
-
-
-
-
-
-
-
diff --git a/app/xs-app.json b/app/xs-app.json
index f6adf5a4..bd045856 100644
--- a/app/xs-app.json
+++ b/app/xs-app.json
@@ -24,31 +24,6 @@
"localDir": "./",
"authenticationType": "xsuaa"
},
- {
- "source": "^/orders/webapp/(.*)$",
- "localDir": "./",
- "authenticationType": "xsuaa"
- },
- {
- "source": "^/reviews/webapp/(.*)$",
- "localDir": "./",
- "authenticationType": "xsuaa"
- },
- {
- "source": "^/notes/webapp/(.*)$",
- "localDir": "./",
- "authenticationType": "xsuaa"
- },
- {
- "source": "^/addresses/webapp/(.*)$",
- "localDir": "./",
- "authenticationType": "xsuaa"
- },
- {
- "source": "^/vue/(.*)$",
- "localDir": "./",
- "authenticationType": "xsuaa"
- },
{
"source": "^/api/admin/(.*)",
"authenticationType": "xsuaa",
diff --git a/srv/src/main/java/my/bookshop/index/UiIndexContentProviderFactory.java b/srv/src/main/java/my/bookshop/index/UiIndexContentProviderFactory.java
index 804e4ed7..1afacc40 100644
--- a/srv/src/main/java/my/bookshop/index/UiIndexContentProviderFactory.java
+++ b/srv/src/main/java/my/bookshop/index/UiIndexContentProviderFactory.java
@@ -42,7 +42,6 @@ public String getSectionTitle() {
public void writeContent(PrintWriter writer, String contextPath) {
writer.print(ENDPOINT_START);
writer.printf(ENDPOINT, contextPath + "/fiori.html", "Fiori UI");
- writer.printf(ENDPOINT, contextPath + "/vue/index.html", "Vue.js UI");
writer.print(ENDPOINT_END);
}