{{loaderMessage}}
-
-
-- Create a latexService.js in the root folder. Refer: [latexService.js](https://github.com/Sunbird-Ed/sunbird-collection-editor/blob/release-4.8.0/latexService.js)
-
-- Create a proxy.conf.json in the root folder. Refer: [proxy.conf.json](https://github.com/Sunbird-Ed/sunbird-collection-editor/blob/release-4.8.0/proxy.conf.json)
-
-- Create server.js in the root folder. Refer: [server.js](https://github.com/Sunbird-Ed/sunbird-collection-editor/blob/release-4.8.0/server.js)
-
-
-## :label: Step 3: Include the styles, scripts and assets in angular.json
-
-Now open the `angular.json` file and add the following under `architect.build.assets` for default project
-
-```diff
-{
- ...
- "build": {
- "builder": "@angular-devkit/build-angular:browser",
- "options": {
- ...
- ...
- "aot": false,
- "assets": [
- ...
- ...
-+ {
-+ "glob": "**/*",
-+ "input": "node_modules/@project-sunbird/sunbird-pdf-player-v9/lib/assets/",
-+ "output": "/assets/"
-+ },
-+ {
-+ "glob": "**/*",
-+ "input": "node_modules/@project-sunbird/sunbird-video-player-v9/lib/assets/",
-+ "output": "/assets/"
-+ },
-+ {
-+ "glob": "**/*",
-+ "input": "node_modules/@project-sunbird/sunbird-collection-editor-v9/lib/assets",
-+ "output": "/assets/"
-+ },
-+ {
-+ "glob": "**/*",
-+ "input": "node_modules/@project-sunbird/sunbird-quml-player-v9/lib/assets/",
-+ "output": "/assets/"
-+ }
- ],
- "styles": [
- ...
-+ "src/assets/quml-styles/quml-carousel.css",
-+ "node_modules/@project-sunbird/sb-styles/assets/_styles.scss",
-+ "src/assets/lib/semantic/semantic.min.css",
-+ "src/assets/styles/styles.scss",
-+ "node_modules/font-awesome/css/font-awesome.css",
-+ "node_modules/video.js/dist/video-js.min.css",
-+ "node_modules/@project-sunbird/sunbird-video-player-v9/lib/assets/videojs.markers.min.css",
-+ "node_modules/videojs-http-source-selector/dist/videojs-http-source-selector.css"
- ],
- "scripts": [
- ...
-+ "node_modules/epubjs/dist/epub.js",
-+ "src/assets/libs/iziToast/iziToast.min.js",
-+ "node_modules/jquery/dist/jquery.min.js",
-+ "node_modules/jquery.fancytree/dist/jquery.fancytree-all-deps.min.js",
-+ "src/assets/lib/dimmer.min.js",
-+ "src/assets/lib/transition.min.js",
-+ "src/assets/lib/modal.min.js",
-+ "src/assets/lib/semantic-ui-tree-picker.js",
-+ "node_modules/@project-sunbird/client-services/index.js",
-+ "node_modules/video.js/dist/video.js",
-+ "node_modules/@project-sunbird/sunbird-video-player-v9/lib/assets/videojs-markers.js",
-+ "node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels.min.js",
-+ "node_modules/videojs-http-source-selector/dist/videojs-http-source-selector.min.js"
- ]
- }
- }
- ...
- ...
-}
+```bash
+ npm install
```
-
-## :label: Step 4: Add question-cursor-implementation.service
-Create a **`question-cursor-implementation.service.ts`** in a project and which will implement the `QuestionCursor` and `EditorCursor` abstract class.
-`QuestionCursor` and `EditorCursor` is an abstract class, exported from the library, which needs to be implemented. Basically it has some methods which should make an API request over HTTP
+Build the library
-Let's create the `question-cursor-implementation` service by running the following command:
-```
-cd src/app
-ng g service question-cursor-implementation
+```bash
+ npm run build-lib
```
-Now open `app.module.ts` file and import like this:
-
-```diff
-+ import { EditorCursor } from 'collection-editor-library';
-+ import { QuestionCursor } from '@project-sunbird/sunbird-quml-player-v9';
-+ import { EditorCursorImplementationService } from './editor-cursor-implementation.service';
-
-@NgModule({
- providers: [
-+ { provide: QuestionCursor, useExisting: EditorCursorImplementationService },
-+ { provide: EditorCursor, useExisting: EditorCursorImplementationService }
- ],
-})
-export class AppModule { }
-
-```
-
-
-For more information refer [question-cursor-implementation.service.ts](https://github.com/Sunbird-Ed/sunbird-collection-editor/blob/release-4.7.0/src/app/editor-cursor-implementation.service.ts) and do not forgot to add your question list API URL
-**For example:** `https://staging.sunbirded.org/api/question/v1/list`
-
-
-
-
-## :label: Step 5: Import the modules and components
+It will create a `/dist/collection-editor-library` folder at the root directory and also copy all the required assets.
-Include `CollectionEditorLibraryModule` in your app module:
-```diff
- import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
-+ import { CollectionEditorLibraryModule, EditorCursor } from '@project-sunbird/sunbird-collection-editor-v9';
- import { RouterModule } from '@angular/router';
- import { QuestionCursor } from '@project-sunbird/sunbird-quml-player-v9';
- import { EditorCursorImplementationService } from './editor-cursor-implementation.service';
+### Starting up Sample application
- @NgModule({
- ...
+A sample angular application is included as part of this repo
- imports: [
-+ CollectionEditorLibraryModule,
- BrowserAnimationsModule,
- RouterModule.forRoot([])
- ],
- providers: [
- { provide: QuestionCursor, useExisting: EditorCursorImplementationService },
- { provide: EditorCursor, useExisting: EditorCursorImplementationService }
- ]
+In another terminal tab -
- ...
- })
+From the root directory - Start the server
- export class AppModule { }
+```bash
+ npm run start
```
+The demo app will launch at `http://localhost:4200`
-Once your library is imported, you can use its main component, `lib-editor` in your Angular application.
+### Run Node server to proxy the APIs
+From the root directory - go to `server.js` file
+```bash
+Update the host variable to which env your pointing. example if you are pointing sunbird dev instance update veriable like below
+const host = 'dev.sunbirded.org'
-Add the I agree that by submitting / publishing this Content, I confirm that this Content complies with prescribed guidelines, including the Terms of Use and Content Policy and that I consent to publish it under the Creative Commons Framework in accordance with the Content Policy. I have made sure that I do not violate others' copyright or privacy rights.
", - "required": true, - "name": "contentPolicyCheck", - "inputType": "checkbox", - "placeholder": "Content Policy Check", - "validations": [ - { - "type": "required", - "message": "Content Policy Check is required" - } - ] - } - ] - }, - "create": { - "templateName": "", - "required": [], - "properties": [ - { - "name": "First Section", - "fields": [ - { - "code": "appIcon", - "dataType": "text", - "description": "appIcon of the content", - "editable": true, - "inputType": "appIcon", - "label": "Icon", - "name": "Icon", - "placeholder": "Icon", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "required": true, - "visible": true - }, - { - "code": "name", - "dataType": "text", - "description": "Name of the content", - "editable": true, - "inputType": "text", - "label": "Name", - "name": "Name", - "placeholder": "Name", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "required": true, - "visible": true, - "validations": [ - { - "type": "maxLength", - "value": "120", - "message": "Exceeded the limit of 120 characters" - }, - { - "type": "required", - "message": "Name is required" - } - ] - }, - { - "code": "description", - "dataType": "text", - "description": "Description of the content", - "editable": true, - "inputType": "textarea", - "label": "Description", - "name": "Description", - "placeholder": "Description", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "required": false, - "visible": true, - "validations": [ - { - "type": "maxLength", - "value": "1000", - "message": "Exceeded the limit of 1000 characters" - } - ] - }, - { - "code": "keywords", - "visible": true, - "editable": true, - "dataType": "list", - "name": "Keywords", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "description": "Keywords for the content", - "inputType": "keywords", - "label": "Keywords", - "placeholder": "Input the keyword and press enter", - "required": false, - "validations": [] - } - ] - }, - { - "name": "Second Section", - "fields": [ - { - "code": "dialcodeRequired", - "dataType": "text", - "description": "QR CODE REQUIRED", - "editable": true, - "default": "No", - "index": 5, - "inputType": "radio", - "label": "QR code required?", - "name": "dialcodeRequired", - "placeholder": "QR code required?", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "range": [ - "Yes", - "No" - ], - "required": false, - "visible": true - }, - { - "code": "dialcodes", - "depends": [ - "dialcodeRequired" - ], - "dataType": "list", - "description": "Digital Infrastructure for Augmented Learning", - "editable": true, - "inputType": "dialcode", - "label": "QR code", - "name": "dialcode", - "placeholder": "Enter code here", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "required": true, - "visible": true, - "validations": [ - { - "type": "minLength", - "value": "2" - }, - { - "type": "maxLength", - "value": "20" - } - ] - } - ] - }, - { - "name": "Third Section", - "fields": [ - { - "code": "primaryCategory", - "dataType": "text", - "description": "Type", - "editable": false, - "renderingHints": {}, - "inputType": "select", - "label": "Category", - "name": "Type", - "placeholder": "", - "required": true, - "visible": true, - "validations": [] - }, - { - "code": "additionalCategories", - "dataType": "list", - "description": "Additional Category of the Content", - "editable": true, - "inputType": "nestedselect", - "label": "Additional Category", - "name": "Additional Category", - "placeholder": "Select Additional Category", - "renderingHints": {}, - "required": false, - "visible": true - } - ] - }, - { - "name": "Framework Terms", - "fields": [ - { - "code": "audience", - "dataType": "list", - "description": "Audience", - "editable": true, - "inputType": "nestedselect", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "label": "Audience Type", - "name": "Audience Type", - "placeholder": "Select Audience Type", - "required": false, - "visible": true, - "range": [ - "Student", - "Teacher", - "Parent", - "Administrator", - "Other" - ] - }, - { - "code": "boardIds", - "visible": true, - "depends": [], - "editable": true, - "dataType": "list", - "sourceCategory": "board", - "output": "identifier", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "description": "Board", - "label": "Board", - "required": true, - "name": "Board/Syllabus", - "inputType": "select", - "placeholder": "Select Board/Syllabus", - "validations": [ - { - "type": "required", - "message": "Board is required" - } - ] - }, - { - "code": "mediumIds", - "visible": true, - "depends": [ - "boardIds" - ], - "editable": true, - "dataType": "list", - "sourceCategory": "medium", - "output": "identifier", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "description": "", - "label": "Medium(s)", - "required": true, - "name": "Medium", - "inputType": "nestedselect", - "placeholder": "Select Medium", - "validations": [ - { - "type": "required", - "message": "Medium is required" - } - ] - }, - { - "code": "gradeLevelIds", - "visible": true, - "depends": [ - "boardIds", - "mediumIds" - ], - "editable": true, - "dataType": "list", - "sourceCategory": "gradeLevel", - "output": "identifier", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "description": "Class", - "label": "Class(es)", - "required": true, - "name": "Class", - "inputType": "nestedselect", - "placeholder": "Select Class", - "validations": [ - { - "type": "required", - "message": "Class is required" - } - ] - }, - { - "code": "subjectIds", - "visible": true, - "depends": [ - "boardIds", - "mediumIds", - "gradeLevelIds" - ], - "editable": true, - "dataType": "list", - "sourceCategory": "subject", - "output": "identifier", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "description": "", - "label": "Subject(s)", - "required": true, - "name": "Subject", - "inputType": "nestedselect", - "placeholder": "Select Subject", - "validations": [ - { - "type": "required", - "message": "Subject is required" - } - ] - } - ] - }, - { - "name": "Fourth Section", - "fields": [ - { - "code": "author", - "dataType": "text", - "description": "Author of the content", - "editable": true, - "inputType": "text", - "label": "Author", - "name": "Author", - "placeholder": "Author", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "required": false, - "visible": true - }, - { - "code": "attributions", - "dataType": "list", - "description": "Attributions", - "editable": true, - "inputType": "text", - "label": "Attributions", - "name": "Attributions", - "placeholder": "Attributions", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "required": false, - "visible": true - }, - { - "code": "copyright", - "dataType": "text", - "description": "Copyright", - "editable": true, - "inputType": "text", - "label": "Copyright", - "name": "Copyright", - "placeholder": "Copyright", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "required": true, - "visible": true, - "validations": [ - { - "type": "required", - "message": "Copyright is required" - } - ] - }, - { - "code": "copyrightYear", - "dataType": "number", - "description": "Year", - "editable": true, - "inputType": "text", - "label": "Copyright Year", - "name": "Copyright Year", - "placeholder": "Copyright Year", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "required": true, - "visible": true, - "validations": [ - { - "type": "required", - "message": "Copyright Year is required" - }, - { - "type": "minLength", - "message": "Year should be a 4 digit number", - "value": 4 - }, - { - "type": "maxLength", - "message": "Year should be a 4 digit number", - "value": 4 - } - ] - }, - { - "code": "license", - "dataType": "text", - "description": "license", - "editable": true, - "inputType": "select", - "label": "License", - "name": "license", - "placeholder": "Select License", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "required": true, - "visible": true, - "defaultValue": "CC BY 4.0", - "validations": [ - { - "type": "required", - "message": "License is required" - } - ] - } - ] - } - ] - }, - "delete": {}, - "publish": {}, - "publishchecklist": { - "templateName": "", - "required": [], - "properties": [ - { - "name": "Appropriateness", - "renderingHints": { - "class": "d-grid-inline-3 display-sectionName" - }, - "fields": [ - { - "code": "appropriatenessOne", - "name": "No Hate speech, Abuse, Violence, Profanity", - "label": "No Hate speech, Abuse, Violence, Profanity", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "appropriatenessTwo", - "name": "No Sexual content, Nudity or Vulgarity", - "label": "No Sexual content, Nudity or Vulgarity", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "appropriatenessThree", - "name": "No Discrimination or Defamation", - "label": "No Discrimination or Defamation", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "appropriatenessFour", - "name": "Is suitable for children", - "label": "Is suitable for children", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - } - ] - }, - { - "name": "Content details", - "renderingHints": { - "class": "d-grid-inline-3 display-sectionName" - }, - "fields": [ - { - "code": "contentdetailsOne", - "name": "Appropriate Title, Description", - "label": "Appropriate Title, Description", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "contentdetailsTwo", - "name": "Correct Board, Grade, Subject, Medium", - "label": "Correct Board, Grade, Subject, Medium", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "contentdetailsThree", - "name": "Appropriate tags such as Resource Type, Concepts", - "label": "Appropriate tags such as Resource Type, Concepts", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "contentdetailsFour", - "name": "Relevant Keywords", - "label": "Relevant Keywords", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - } - ] - }, - { - "name": "Usability", - "renderingHints": { - "class": "d-grid-inline-3 display-sectionName" - }, - "fields": [ - { - "code": "usabilityOne", - "name": "Content plays correctly", - "label": "Content plays correctly", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "usabilityTwo", - "name": "Can see the content clearly on Desktop and App", - "label": "Can see the content clearly on Desktop and App", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "usabilityThree", - "name": "Audio (if any) is clear and easy to understand", - "label": "Audio (if any) is clear and easy to understand", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "usabilityFour", - "name": "No Spelling mistakes in the text", - "label": "No Spelling mistakes in the text", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - }, - { - "code": "usabilityFive", - "name": "Language is simple to understand", - "label": "Language is simple to understand", - "dataType": "boolean", - "inputType": "checkbox", - "editable": true, - "required": false, - "visible": true, - "validations": [ - { - "type": "required", - "message": "" - } - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - } - } - ] - } - ] - }, - "review": {}, - "search": { - "templateName": "", - "required": [], - "properties": [ - { - "code": "primaryCategory", - "dataType": "list", - "description": "Type", - "editable": true, - "default": [], - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "inputType": "nestedselect", - "label": "Content Type(s)", - "name": "Type", - "placeholder": "Select ContentType", - "required": false, - "visible": true - }, - { - "code": "board", - "visible": true, - "depends": [], - "editable": true, - "dataType": "list", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "description": "Board", - "label": "Board", - "required": false, - "name": "Board", - "inputType": "select", - "placeholder": "Select Board", - "output": "name" - }, - { - "code": "medium", - "visible": true, - "depends": [ - "board" - ], - "editable": true, - "dataType": "list", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "description": "", - "label": "Medium(s)", - "required": false, - "name": "Medium", - "inputType": "nestedselect", - "placeholder": "Select Medium", - "output": "name" - }, - { - "code": "gradeLevel", - "visible": true, - "depends": [ - "board", - "medium" - ], - "editable": true, - "default": "", - "dataType": "list", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "description": "Class", - "label": "Class(es)", - "required": false, - "name": "Class", - "inputType": "nestedselect", - "placeholder": "Select Class", - "output": "name" - }, - { - "code": "subject", - "visible": true, - "depends": [ - "board", - "medium", - "gradeLevel" - ], - "editable": true, - "default": "", - "dataType": "list", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "description": "", - "label": "Subject(s)", - "required": false, - "name": "Subject", - "inputType": "nestedselect", - "placeholder": "Select Subject", - "output": "name" - }, - { - "code": "topic", - "visible": true, - "editable": true, - "dataType": "list", - "depends": [ - "board", - "medium", - "gradeLevel", - "subject" - ], - "default": "", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "name": "Topic", - "description": "Choose a Topics", - "inputType": "topicselector", - "label": "Topic(s)", - "placeholder": "Choose Topics", - "required": false - } - ] - }, - "unitMetadata": { - "templateName": "", - "required": [], - "properties": [ - { - "name": "First Section", - "fields": [ - { - "code": "name", - "dataType": "text", - "description": "Name of the content", - "editable": true, - "inputType": "text", - "label": "Name", - "name": "Title", - "placeholder": "Name", - "renderingHints": { - "class": "sb-g-col-lg-1 required" - }, - "required": true, - "visible": true, - "validations": [ - { - "type": "maxLength", - "value": "120", - "message": "Exceeded the limit of 120 characters" - }, - { - "type": "required", - "message": "Name is required" - } - ] - }, - { - "code": "description", - "dataType": "text", - "description": "Description of the content", - "editable": true, - "inputType": "textarea", - "label": "Description", - "name": "Description", - "placeholder": "Description", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "required": false, - "visible": true, - "validations": [ - { - "type": "maxLength", - "value": "1000", - "message": "Exceeded the limit of 120 characters" - } - ] - }, - { - "code": "keywords", - "visible": true, - "editable": true, - "dataType": "list", - "name": "Keywords", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "index": 3, - "description": "Keywords for the content", - "inputType": "keywords", - "label": "Keywords", - "placeholder": "Input the keyword and press enter", - "required": false, - "validations": [] - }, - { - "code": "topic", - "visible": true, - "editable": true, - "dataType": "list", - "depends": [ - "board", - "medium", - "gradeLevel", - "subject" - ], - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "name": "Topic", - "description": "Choose a Topics", - "inputType": "topicselector", - "label": "Topics covered in the course", - "placeholder": "Choose Topics", - "required": false - }, - { - "code": "dialcodeRequired", - "dataType": "text", - "description": "QR CODE REQUIRED", - "editable": true, - "default": "No", - "index": 5, - "inputType": "radio", - "label": "QR code required?", - "name": "dialcodeRequired", - "placeholder": "QR code required?", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "range": [ - "Yes", - "No" - ], - "required": false, - "visible": true - }, - { - "code": "dialcodes", - "depends": [ - "dialcodeRequired" - ], - "dataType": "list", - "description": "Digital Infrastructure for Augmented Learning", - "editable": true, - "inputType": "dialcode", - "label": "QR code", - "name": "dialcode", - "placeholder": "Enter code here", - "renderingHints": { - "class": "sb-g-col-lg-1" - }, - "required": true, - "visible": true, - "validations": [ - { - "type": "minLength", - "value": "2" - }, - { - "type": "maxLength", - "value": "20" - } - ] - } - ] - } - ] - }, - "update": {} - } - } - } - } \ No newline at end of file diff --git a/docs/collection-editor-architecture.drawio.png b/docs/collection-editor-architecture.drawio.png deleted file mode 100644 index 662dac89c..000000000 Binary files a/docs/collection-editor-architecture.drawio.png and /dev/null differ diff --git a/package-lock.json b/package-lock.json index 8645b5874..c1c13051b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2976,51 +2976,28 @@ "resolved": "https://registry.npmjs.org/@project-sunbird/sb-styles/-/sb-styles-0.0.7.tgz", "integrity": "sha512-XirxDLdQnaKJC+tFh4IAD05ULHS7DE9ZkNsPRHglWzly8erTXe6M1DAL+XWKYVFLf+GK9U6HVKlvvxIUpRCiVw==" }, - "@project-sunbird/sunbird-epub-player-v9": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-epub-player-v9/-/sunbird-epub-player-v9-4.5.5.tgz", - "integrity": "sha512-nQdzxp1v0pdfk1uGDt6UODQ+TFReATPxSd4qWNpcxGCoXN66uXARmRyjTD9eRsH7TRAR+VVqxeUmdTxwV9I2hg==", - "requires": { - "@project-sunbird/sunbird-player-sdk-v9": "4.4.4" - } - }, "@project-sunbird/sunbird-pdf-player-v9": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-pdf-player-v9/-/sunbird-pdf-player-v9-4.2.0.tgz", - "integrity": "sha512-RxmXPpvGaAsMDmQJXf1tJZt3/JT5CXCOi6x4kZjmjDynMME8oVRn4HRPyxqgielbWhTop2CpOt51BC8hM3ujKQ==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-pdf-player-v9/-/sunbird-pdf-player-v9-4.8.2.tgz", + "integrity": "sha512-vUWyZ0eF86jx9/5EWy5SAhlUS/YARFGKYE6R71x4VlgPlN8Pd70Q93hXlcEBuHslIEaYGj76SXnG33NECP8GLw==", "requires": { - "@project-sunbird/sunbird-player-sdk-v9": "^4.2.0" + "@project-sunbird/sunbird-player-sdk-v9": "4.6.4" } }, "@project-sunbird/sunbird-player-sdk-v9": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-player-sdk-v9/-/sunbird-player-sdk-v9-4.4.4.tgz", - "integrity": "sha512-AsHyA3SUpNRcGiCTVkp4rLtuFPPIQTOHhthREHHe90g4HX+JeeaSz3FYRzZ3nLjZdNFWOJ/9Xqni00sJQcuDfQ==" - }, - "@project-sunbird/sunbird-quml-player-v9": { - "version": "4.8.11", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-quml-player-v9/-/sunbird-quml-player-v9-4.8.11.tgz", - "integrity": "sha512-RktWW5ZmadduzbWcq6F50YYiSK6Ve+c6yKffzz9oByzsFoQ+XvrwejVHdUqaXa7dwArQveD/f2AbdCE0s28yOQ==", + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-player-sdk-v9/-/sunbird-player-sdk-v9-4.6.4.tgz", + "integrity": "sha512-pxAVFewcRrXxckAUk4f49hDh8DKmUxI5kZZA1+9NVfDO8w7E1cfC0zcvbfu1fP1u26qUA06wCR+O7Tn7FdNwMw==", "requires": { - "@project-sunbird/sunbird-player-sdk-v9": "4.8.0" - }, - "dependencies": { - "@project-sunbird/sunbird-player-sdk-v9": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-player-sdk-v9/-/sunbird-player-sdk-v9-4.8.0.tgz", - "integrity": "sha512-8qj3Gg027eT6dqLw9iPGJ1GApoytvnglHSOb7p5E0lwZH+pneGh1iESP0avX98klg5CkHn0Sh+V/m4tP0/f4Gw==", - "requires": { - "ally.js": "1.4.1" - } - } + "ally.js": "1.4.1" } }, - "@project-sunbird/sunbird-resource-library": { - "version": "0.0.14", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-resource-library/-/sunbird-resource-library-0.0.14.tgz", - "integrity": "sha512-VH6xOFENjePIPqh1LdQ2ZG/iKAPRlDIWMO2e4FA4sa72G43MMGgdPfY/BXwt6R52iLSIuEFZ8YRGjZzpwDz/4A==", + "@project-sunbird/sunbird-quml-player-v9": { + "version": "4.4.16", + "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-quml-player-v9/-/sunbird-quml-player-v9-4.4.16.tgz", + "integrity": "sha512-jDaQLtbHo3Zz2ABiMtZfEmMOUV/0ZUpQ+MaKGKKcHyR4NduiSh2Ii17Klab1mxOyDLo73trTsOEvoJ9Infs59w==", "requires": { - "tslib": "^1.10.0" + "@project-sunbird/sunbird-player-sdk-v9": "^4.4.4" } }, "@project-sunbird/sunbird-video-player-v9": { @@ -3029,13 +3006,6 @@ "integrity": "sha512-3JvpkhMhxssCxcd5NyzxXR/ziuilsIeJrsNaZr7zj6P/uWLuDipR6JGtDkV0Nd+XNpPh2PciQB/XXq7D4H1+yg==", "requires": { "@project-sunbird/sunbird-player-sdk-v9": "^4.4.4" - }, - "dependencies": { - "@project-sunbird/sunbird-player-sdk-v9": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/@project-sunbird/sunbird-player-sdk-v9/-/sunbird-player-sdk-v9-4.4.4.tgz", - "integrity": "sha512-AsHyA3SUpNRcGiCTVkp4rLtuFPPIQTOHhthREHHe90g4HX+JeeaSz3FYRzZ3nLjZdNFWOJ/9Xqni00sJQcuDfQ==" - } } }, "@project-sunbird/telemetry-sdk": { @@ -3247,14 +3217,6 @@ "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, - "@types/localforage": { - "version": "0.0.34", - "resolved": "https://registry.npmjs.org/@types/localforage/-/localforage-0.0.34.tgz", - "integrity": "sha1-XjHDLdh5HsS5/z70fJy1Wy0NlDg=", - "requires": { - "localforage": "*" - } - }, "@types/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", @@ -3556,16 +3518,6 @@ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, "abab": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz", @@ -3674,7 +3626,7 @@ "ally.js": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/ally.js/-/ally.js-1.4.1.tgz", - "integrity": "sha1-n7fmuljvrE7pExyymqnuO1QLzx4=", + "integrity": "sha512-ZewdfuwP6VewtMN36QY0gmiyvBfMnmEaNwbVu2nTS6zRt069viTgkYgaDiqu6vRJ1VJCriNqV0jGMu44R8zNbA==", "requires": { "css.escape": "^1.5.0", "platform": "1.3.3" @@ -5495,9 +5447,9 @@ "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==" }, "common-form-elements-web-v9": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/common-form-elements-web-v9/-/common-form-elements-web-v9-4.7.2.tgz", - "integrity": "sha512-MsH0QLghlZZpN/z27iCgGQckUecSoBhGDIzIuVKqsIBPEVqVqktDtuHl2Mxiv9XWAhZa31IVM0shVoAWVX8LDg==", + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/common-form-elements-web-v9/-/common-form-elements-web-v9-4.4.6.tgz", + "integrity": "sha512-9uak+bkon9N4ORS+vwMnTvraSx6oFYIB5fwVG4s/i/omgCr10myWaCMpi5HaDbCIz8t2X2SR7vcvJ0zazDMH9g==", "requires": { "immutable": "^4.0.0-rc.12", "moment": "^2.29.1", @@ -6133,7 +6085,7 @@ "css.escape": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==" }, "cssauron": { "version": "1.4.0", @@ -6931,39 +6883,6 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" }, - "epubjs": { - "version": "0.3.88", - "resolved": "https://registry.npmjs.org/epubjs/-/epubjs-0.3.88.tgz", - "integrity": "sha512-VRumULpUELYmYwzypyfbDwoSIqDp2LXOXCtY3o55o3YDW5Zm32UjtZuX/xaWFGqyZORNNMWWQ8VlMaY1djnDYg==", - "requires": { - "@types/localforage": "0.0.34", - "core-js": "^3.6.5", - "event-emitter": "^0.3.5", - "jszip": "^3.4.0", - "localforage": "^1.7.3", - "lodash": "^4.17.15", - "marks-pane": "^1.0.9", - "path-webpack": "0.0.3", - "xmldom": "^0.3.0" - }, - "dependencies": { - "core-js": { - "version": "3.20.3", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.20.3.tgz", - "integrity": "sha512-vVl8j8ph6tRS3B8qir40H7yw7voy17xL0piAjlbBUsH7WIfzoedL/ZOr1OV9FyZQLWXsayOJyV4tnRyXR85/ag==" - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "xmldom": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.3.0.tgz", - "integrity": "sha512-z9s6k3wxE+aZHgXYxSTpGDo7BYOUfJsIRyoZiX6HTjwpwfS2wpQBQKa2fD+ShLyPkqDYo5ud7KitmLZ2Cd6r0g==" - } - } - }, "err-code": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", @@ -7164,15 +7083,6 @@ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, "eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", @@ -7310,11 +7220,6 @@ "homedir-polyfill": "^1.0.1" } }, - "export-to-csv": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/export-to-csv/-/export-to-csv-0.2.1.tgz", - "integrity": "sha512-KTbrd3CAZ0cFceJEZr1e5uiMasabeCpXq1/5uvVxDl53o4jXJHnltasQoj2NkzrxD8hU9kdwjnMhoir/7nNx/A==" - }, "express": { "version": "4.17.1", "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", @@ -8835,7 +8740,8 @@ "immediate": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true }, "immutable": { "version": "4.0.0", @@ -9953,6 +9859,16 @@ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", "dev": true }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -9968,6 +9884,7 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", + "dev": true, "requires": { "lie": "~3.3.0", "pako": "~1.0.2", @@ -10342,6 +10259,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, "requires": { "immediate": "~3.0.5" } @@ -10419,24 +10337,6 @@ "json5": "^2.1.2" } }, - "localforage": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz", - "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==", - "requires": { - "lie": "3.1.1" - }, - "dependencies": { - "lie": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", - "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", - "requires": { - "immediate": "~3.0.5" - } - } - } - }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -10679,11 +10579,6 @@ "object-visit": "^1.0.0" } }, - "marks-pane": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/marks-pane/-/marks-pane-1.0.9.tgz", - "integrity": "sha512-Ahs4oeG90tbdPWwAJkAAoHg2lRR8lAs9mZXETNPO9hYg3AkjUJBKi1NQ4aaIQZVGrig7c/3NUV1jANl8rFTeMg==" - }, "matchdep": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", @@ -11877,9 +11772,9 @@ "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", "dev": true, "requires": { - "JSONStream": "^1.3.4", "bluebird": "^3.5.1", "figgy-pudding": "^3.4.1", + "JSONStream": "^1.3.4", "lru-cache": "^5.1.1", "make-fetch-happen": "^5.0.0", "npm-package-arg": "^6.1.0", @@ -12676,7 +12571,8 @@ "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true }, "parallel-transform": { "version": "1.2.0", @@ -12826,11 +12722,6 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "path-webpack": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/path-webpack/-/path-webpack-0.0.3.tgz", - "integrity": "sha1-/23sdJ7sWpRgXATV9j/FVgegOhY=" - }, "pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", @@ -12894,7 +12785,7 @@ "platform": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.3.tgz", - "integrity": "sha1-ZGx3ARiZhwtqCQPnXpl+jlHadGE=" + "integrity": "sha512-VJK1SRmXBpjwsB4YOHYSturx48rLKMzHgCqDH2ZDa6ZbMS/N5huoNqyQdK5Fj/xayu3fqbXckn5SeCS1EbMDZg==" }, "plugin-error": { "version": "1.0.1", @@ -15008,7 +14899,8 @@ "set-immediate-shim": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true }, "set-value": { "version": "2.0.1", @@ -15791,6 +15683,21 @@ "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", "dev": true }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -15819,21 +15726,6 @@ "define-properties": "^1.1.3" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -17148,30 +17040,11 @@ "videojs-vtt.js": "^0.15.2" } }, - "videojs-contrib-quality-levels": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/videojs-contrib-quality-levels/-/videojs-contrib-quality-levels-2.1.0.tgz", - "integrity": "sha512-dqGQGbL9AFhucxki7Zh0c3kIhH0PAPcHEh6jUdRyaFCVeOuqnJrOYs/3wNtsokDdBdRf2Du2annpu4Z2XaSZRg==", - "requires": { - "global": "^4.3.2", - "video.js": "^6 || ^7" - } - }, "videojs-font": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/videojs-font/-/videojs-font-3.2.0.tgz", "integrity": "sha512-g8vHMKK2/JGorSfqAZQUmYYNnXmfec4MLhwtEFS+mMs2IDY398GLysy6BH6K+aS1KMNu/xWZ8Sue/X/mdQPliA==" }, - "videojs-http-source-selector": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/videojs-http-source-selector/-/videojs-http-source-selector-1.1.6.tgz", - "integrity": "sha512-6b5MmKTT2cVnrjtdNj4z1VO91udbXkZkTYA6LlD8WN2aHlG2rqFTmtMab4NK4nlkkkbRnm3c2q2IddL3jffLmg==", - "requires": { - "global": "^4.3.2", - "video.js": "^7.0.0", - "videojs-contrib-quality-levels": "^2.0.4" - } - }, "videojs-vtt.js": { "version": "0.15.2", "resolved": "https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.2.tgz", diff --git a/package.json b/package.json index 44dd51b77..5f92c2794 100644 --- a/package.json +++ b/package.json @@ -25,19 +25,15 @@ "@project-sunbird/ckeditor-build-classic": "^4.1.3", "@project-sunbird/client-services": "4.2.3", "@project-sunbird/sb-styles": "0.0.7", - "@project-sunbird/sunbird-epub-player-v9": "4.5.5", - "@project-sunbird/sunbird-pdf-player-v9": "4.2.0", - "@project-sunbird/sunbird-quml-player-v9": "4.8.11", - "@project-sunbird/sunbird-resource-library": "0.0.14", + "@project-sunbird/sunbird-pdf-player-v9": "4.8.2", + "@project-sunbird/sunbird-quml-player-v9": "4.4.16", "@project-sunbird/sunbird-video-player-v9": "4.4.2", "@project-sunbird/telemetry-sdk": "0.0.26", "@types/jquery": "^3.5.5", "alphanum-sort": "^1.0.2", "angular2-uuid": "^1.1.1", - "common-form-elements-web-v9": "4.7.2", + "common-form-elements-web-v9": "4.4.6", "core-js": "^2.5.4", - "epubjs": "0.3.88", - "export-to-csv": "^0.2.1", "express": "^4.17.1", "express-http-proxy": "^1.6.2", "fine-uploader": "^5.15.7", @@ -61,8 +57,6 @@ "svg2img": "^0.6.1", "tslib": "^1.10.0", "video.js": "^7.10.2", - "videojs-contrib-quality-levels": "^2.1.0", - "videojs-http-source-selector": "^1.1.6", "zone.js": "~0.10.2" }, "devDependencies": { diff --git a/projects/collection-editor-library/package.json b/projects/collection-editor-library/package.json index bf8cea1e8..b0ed1f75a 100644 --- a/projects/collection-editor-library/package.json +++ b/projects/collection-editor-library/package.json @@ -1,10 +1,10 @@ { "name": "@project-sunbird/sunbird-collection-editor-v9", - "version": "4.8.24", + "version": "4.5.1", "peerDependencies": { "@angular/common": "~9.1.13", "@angular/core": "~9.1.13", - "common-form-elements-web-v9": "4.7.2", + "common-form-elements-web-v9": "4.4.6", "@project-sunbird/ckeditor-build-classic": "4.1.3", "ng2-semantic-ui-v9": "0.0.3" } diff --git a/projects/collection-editor-library/src/lib/collection-editor-library.module.ts b/projects/collection-editor-library/src/lib/collection-editor-library.module.ts index 8f31fb4e1..021fe8d7d 100644 --- a/projects/collection-editor-library/src/lib/collection-editor-library.module.ts +++ b/projects/collection-editor-library/src/lib/collection-editor-library.module.ts @@ -6,8 +6,6 @@ import { CommonFormElementsModule, DialcodeCursor } from 'common-form-elements-w import { SuiModule } from 'ng2-semantic-ui-v9'; import { InfiniteScrollModule } from 'ngx-infinite-scroll'; import { HttpClientModule } from '@angular/common/http'; -import { SanitizeHtmlPipe } from './pipes/sanitize-html.pipe'; -import { InterpolatePipe } from './pipes/interpolate.pipe'; import { CollectionEditorLibraryComponent } from './collection-editor-library.component'; import { ContentplayerPageComponent } from './components/contentplayer-page/contentplayer-page.component'; import { EditorComponent } from './components/editor/editor.component'; @@ -27,12 +25,10 @@ import { AnswerComponent } from './components/answer/answer.component'; import { CkeditorToolComponent } from './components/ckeditor-tool/ckeditor-tool.component'; import { QuestionComponent } from './components/question/question.component'; import {SunbirdPdfPlayerModule} from '@project-sunbird/sunbird-pdf-player-v9'; -import { SunbirdEpubPlayerModule } from '@project-sunbird/sunbird-epub-player-v9'; import { SunbirdVideoPlayerModule } from '@project-sunbird/sunbird-video-player-v9'; import { QumlLibraryModule } from '@project-sunbird/sunbird-quml-player-v9'; import {CarouselModule} from 'ngx-bootstrap/carousel'; import { TelemetryInteractDirective } from './directives/telemetry-interact/telemetry-interact.directive'; -import { DateFormatPipe } from './directives/date-format/date-format.pipe'; import { AssetBrowserComponent } from './components/asset-browser/asset-browser.component'; import { CollectionIconComponent } from './components/collection-icon/collection-icon.component'; import { CacheService } from 'ng2-cache-service'; @@ -41,28 +37,19 @@ import { CacheSessionStorage } from 'ng2-cache-service/dist/src/services/storage import { QumlPlayerComponent } from './components/quml-player/quml-player.component'; import { DialcodeComponent } from './components/dialcode/dialcode.component'; import { DialcodeService } from './services/dialcode/dialcode.service'; -import { QuestionOptionSubMenuComponent } from './components/question-option-sub-menu/question-option-sub-menu.component'; import { CsvUploadComponent } from './components/csv-upload/csv-upload.component'; import { ManageCollaboratorComponent } from './components/manage-collaborator/manage-collaborator.component'; -import { SliderComponent } from './components/slider/slider.component'; -import { TranslationsComponent } from './components/translations/translations.component'; import { PublishChecklistComponent } from './components/publish-checklist/publish-checklist.component'; -import { BulkUploadComponent } from './components/bulk-upload/bulk-upload.component'; -import { RelationalMetadataComponent } from './components/relational-metadata/relational-metadata.component'; -import { ResourceLibraryModule } from '@project-sunbird/sunbird-resource-library'; -import { AppLoaderComponent } from './components/app-loader/app-loader.component'; @NgModule({ - declarations: [CollectionEditorLibraryComponent, InterpolatePipe, SanitizeHtmlPipe, ContentplayerPageComponent, - EditorComponent, QumlplayerPageComponent, HeaderComponent, FancyTreeComponent, MetaFormComponent, LibraryComponent, - LibraryFilterComponent, LibraryListComponent, QuestionComponent, OptionsComponent, AnswerComponent, CkeditorToolComponent, - LibraryPlayerComponent, ResourceReorderComponent, SkeletonLoaderComponent, TemplateComponent, DateFormatPipe, - TelemetryInteractDirective, AssetBrowserComponent, CollectionIconComponent, - QumlPlayerComponent, DialcodeComponent, BulkUploadComponent, CsvUploadComponent, ManageCollaboratorComponent, - PublishChecklistComponent, QuestionOptionSubMenuComponent, SliderComponent, TranslationsComponent,AppLoaderComponent, - RelationalMetadataComponent], + declarations: [CollectionEditorLibraryComponent, ContentplayerPageComponent, EditorComponent, QumlplayerPageComponent, + HeaderComponent, FancyTreeComponent, MetaFormComponent, LibraryComponent, LibraryFilterComponent, LibraryListComponent, + QuestionComponent, OptionsComponent, AnswerComponent, CkeditorToolComponent, + LibraryPlayerComponent, ResourceReorderComponent, SkeletonLoaderComponent, TemplateComponent, TelemetryInteractDirective, + AssetBrowserComponent, CollectionIconComponent, + QumlPlayerComponent, DialcodeComponent, CsvUploadComponent, ManageCollaboratorComponent, PublishChecklistComponent,], imports: [CommonModule, FormsModule, ReactiveFormsModule, RouterModule.forChild([]), SuiModule, CommonFormElementsModule, InfiniteScrollModule, HttpClientModule, SunbirdPdfPlayerModule, SunbirdVideoPlayerModule, - QumlLibraryModule, CarouselModule, SunbirdEpubPlayerModule, ResourceLibraryModule], + QumlLibraryModule, CarouselModule], providers: [ CacheService, { provide: CacheStorageAbstract, useClass: CacheSessionStorage }, diff --git a/projects/collection-editor-library/src/lib/components/answer/answer.component.html b/projects/collection-editor-library/src/lib/components/answer/answer.component.html index dc764cfbf..b895aaaac 100644 --- a/projects/collection-editor-library/src/lib/components/answer/answer.component.html +++ b/projects/collection-editor-library/src/lib/components/answer/answer.component.html @@ -1,15 +1,9 @@true
" - } - ]; - component.subMenuConfig(options); - expect(component.subMenuConfig).toHaveBeenCalledWith(options) - }) - - it('#setScore() should call if score is entered', () => { - spyOn(component,'setScore').and.callThrough(); - const value = "20"; - const scoreIndex = 1; - component.setScore(value,scoreIndex); - component.editorDataHandler(); - expect(component.setScore).toHaveBeenCalled(); - }); - }); diff --git a/projects/collection-editor-library/src/lib/components/options/options.component.ts b/projects/collection-editor-library/src/lib/components/options/options.component.ts index 9507a5cbf..4b5d889d5 100644 --- a/projects/collection-editor-library/src/lib/components/options/options.component.ts +++ b/projects/collection-editor-library/src/lib/components/options/options.component.ts @@ -2,9 +2,6 @@ import { Component, OnInit, Input, EventEmitter, Output, ViewEncapsulation } fro import * as _ from 'lodash-es'; import { EditorTelemetryService } from '../../services/telemetry/telemetry.service'; import { ConfigService } from '../../services/config/config.service'; -import { SubMenu } from '../question-option-sub-menu/question-option-sub-menu.component'; -import { TreeService } from '../../services/tree/tree.service'; -import { EditorService } from '../../services/editor/editor.service'; @Component({ selector: 'lib-options', templateUrl: './options.component.html', @@ -14,35 +11,17 @@ import { EditorService } from '../../services/editor/editor.service'; export class OptionsComponent implements OnInit { @Input() editorState: any; @Input() showFormError; - @Input() sourcingSettings; - @Input() questionPrimaryCategory; - @Input() mapping = []; - @Input() isReadOnlyMode; @Output() editorDataOutput: EventEmitter