@clickview/curator 1.0.24-dev.0 → 1.0.24-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/curator-app.css +1 -1
- package/dist/curator-app.css.map +1 -0
- package/dist/curator-app.js +3 -3
- package/dist/curator-app.js.map +1 -0
- package/dist/en.json +1 -1
- package/dist/libs/analytics/src/interfaces/AnalyticsTypes.d.ts +3 -8
- package/dist/libs/common/src/backbone/constants/CommonServices.d.ts +1 -0
- package/dist/libs/common/src/backbone/core/BaseAppRouter.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseApplication.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseBehavior.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseCollection.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseCollectionView.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseLayoutView.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseModel.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseNestedModel.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseService.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/BaseView.d.ts +2 -2
- package/dist/libs/common/src/backbone/core/LayoutService.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/ListenToRadio.d.ts +1 -1
- package/dist/libs/common/src/backbone/core/Shell.d.ts +1 -1
- package/dist/libs/common/src/backbone/interfaces/BaseCollectionIdentifier.d.ts +1 -2
- package/dist/libs/common/src/backbone/interfaces/DataProvider.d.ts +1 -1
- package/dist/libs/common/src/backbone/services/LanguageService.d.ts +1 -1
- package/dist/libs/common/src/backbone/services/data-providers/AjaxDataProvider.d.ts +1 -1
- package/dist/libs/common/src/backbone/utils/FunctionHelper.d.ts +3 -3
- package/dist/libs/common/src/react/flight/FlightMiddleware.d.ts +1 -1
- package/dist/libs/common/src/react/flight/interfaces/HttpRequest.d.ts +0 -3
- package/dist/libs/common/src/react/utils/ArrayHelper.d.ts +3 -4
- package/dist/libs/common/src/react/utils/FetchHelper.d.ts +1 -1
- package/dist/libs/shared/src/components/confirmation-popup/ConfirmationPopup.d.ts +2 -5
- package/dist/libs/shared/src/components/forms/form-buttons/FormButtons.d.ts +1 -2
- package/dist/libs/shared/src/components/forms/form-checkbox/FormCheckbox.d.ts +1 -1
- package/dist/libs/shared/src/components/forms/form-field/CharacterCounter.d.ts +2 -3
- package/dist/libs/shared/src/components/forms/form-field/FormField.d.ts +3 -4
- package/dist/libs/shared/src/components/forms/form-wrapper/FormWrapper.d.ts +1 -2
- package/dist/libs/shared/src/components/popup/Popup.d.ts +0 -14
- package/dist/libs/shared/src/components/search-bar/SearchBar.d.ts +0 -24
- package/dist/libs/shared/src/components/search-bar/SearchInput.d.ts +2 -6
- package/dist/libs/shared/src/constants/BootstrapKeys.d.ts +0 -1
- package/dist/libs/shared/src/enums/PermissionName.d.ts +23 -0
- package/dist/libs/shared/src/enums/PlayerMediaType.d.ts +1 -0
- package/dist/libs/shared/src/enums/ResourceFileType.d.ts +9 -0
- package/dist/libs/shared/src/enums/WidgetContents.d.ts +1 -2
- package/dist/libs/shared/src/flight-requests/ThemeRequests.d.ts +0 -2
- package/dist/libs/shared/src/flight-requests/UserRequests.d.ts +1 -3
- package/dist/libs/shared/src/images/svg/ImportedSvgs.d.ts +1 -3
- package/dist/libs/shared/src/images/svg/actions/index.d.ts +1 -3
- package/dist/libs/shared/src/interfaces/collections/index.d.ts +0 -1
- package/dist/libs/shared/src/interfaces/models/Config.d.ts +0 -2
- package/dist/libs/shared/src/interfaces/models/Glance.d.ts +0 -2
- package/dist/libs/shared/src/interfaces/models/InteractiveMetadata.d.ts +11 -0
- package/dist/libs/shared/src/interfaces/models/Link.d.ts +0 -1
- package/dist/libs/shared/src/interfaces/models/Resource.d.ts +3 -11
- package/dist/libs/shared/src/interfaces/models/Thumbnail.d.ts +0 -3
- package/dist/libs/shared/src/interfaces/models/User.d.ts +1 -8
- package/dist/libs/shared/src/interfaces/models/index.d.ts +0 -4
- package/dist/libs/shared/src/interfaces/models/interactive/ActionableItem.d.ts +6 -0
- package/dist/libs/shared/src/interfaces/models/interactive/Interaction.d.ts +16 -0
- package/dist/libs/shared/src/interfaces/models/interactive/InteractionType.d.ts +7 -0
- package/dist/libs/shared/src/interfaces/models/interactive/InteractionTypeId.d.ts +8 -0
- package/dist/libs/shared/src/interfaces/models/interactive/Interactive.d.ts +7 -0
- package/dist/libs/shared/src/interfaces/models/interactive/Timepoint.d.ts +9 -0
- package/dist/libs/shared/src/interfaces/models/interactive/index.d.ts +6 -0
- package/dist/libs/shared/src/interfaces/requests/CreateOrUpdateClipRequest.d.ts +6 -0
- package/dist/libs/shared/src/interfaces/requests/UpdateVideoRequest.d.ts +1 -5
- package/dist/libs/shared/src/interfaces/requests/index.d.ts +0 -4
- package/dist/libs/shared/src/interfaces/services/BaseUserDataService.d.ts +0 -2
- package/dist/libs/shared/src/interfaces/services/index.d.ts +0 -1
- package/dist/libs/shared/src/utils/ImageHelper.d.ts +4 -5
- package/dist/libs/shared/src/utils/StateHelper.d.ts +9 -10
- package/dist/libs/shared/src/utils/SvgHelper.d.ts +1 -0
- package/dist/projects/curator/src/apps/series/interfaces/data-requests/Series.d.ts +2 -1
- package/dist/projects/curator/src/apps/subjects/components/levels/select-levels/SelectLevels.d.ts +0 -1
- package/dist/projects/curator/src/apps/subjects/components/subjects/select-subjects/SelectSubjects.d.ts +0 -1
- package/dist/projects/curator/src/apps/videos/interfaces/data-requests/UpdateVideoRequest.d.ts +2 -1
- package/dist/projects/curator/src/index.d.ts +0 -20
- package/dist/projects/curator/src/shared/components/forms/file-select/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/components/forms/image-select/ImageSelect.d.ts +3 -4
- package/dist/projects/curator/src/shared/components/forms/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/components/image-cropper/ImageCropper.d.ts +10 -0
- package/dist/projects/curator/src/shared/components/image-cropper/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/components/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/components/rating-select/RatingSelect.d.ts +4 -4
- package/dist/projects/curator/src/shared/constants/FileExtensions.d.ts +3 -0
- package/dist/projects/curator/src/shared/constants/Services.d.ts +1 -0
- package/dist/projects/curator/src/shared/constants/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/context/ImageStorageContext.d.ts +45 -0
- package/dist/projects/curator/src/shared/context/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/flight-requests/RatingRequests.d.ts +4 -0
- package/dist/projects/curator/src/shared/interfaces/data-requests/UpdateObjectRating.d.ts +3 -0
- package/dist/projects/curator/src/shared/interfaces/data-requests/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/layouts/curator-layout/CuratorLayoutView.d.ts +1 -1
- package/dist/projects/curator/src/shared/layouts/primitives/LayoutComponent.d.ts +1 -1
- package/dist/projects/curator/src/shared/services/ImageUploadDataService.d.ts +8 -0
- package/dist/projects/curator/src/shared/services/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/utils/ImageSelectHelper.d.ts +6 -0
- package/dist/projects/curator/src/shared/utils/PropHelper.d.ts +1 -2
- package/dist/projects/curator/src/shared/utils/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/views/image-upload/ImageUploadView.d.ts +8 -0
- package/dist/projects/curator/src/shared/views/image-upload/index.d.ts +1 -0
- package/dist/projects/curator/src/shared/views/index.d.ts +1 -0
- package/package.json +47 -48
- package/.eslintrc.json +0 -3
- package/dist/libs/shared/src/enums/MasterObjectTypes.d.ts +0 -8
- package/dist/libs/shared/src/enums/ObjectStatus.d.ts +0 -5
- package/dist/libs/shared/src/utils/VideoDetailsHelper.d.ts +0 -21
package/dist/en.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"subjects":{"selectPresentation":{"heading":"Select a presentation to view its %{objectType}:"},"comingSoon":{"comingSoon":"Coming Soon","info":"We are currently building this topic. In the meantime, we can remind you when it's available.","remindMe":"Remind Me"},"heroVideo":{"resourcesHeading":"Resources","linksHeading":"Links","clipsHeading":"Clips","tagsHeading":"Tags","links":"%{smart_count} link |||| %{smart_count} links","resources":"%{smart_count} resource |||| %{smart_count} resources","clips":"%{smart_count} clip |||| %{smart_count} clips","heading":"Featured video"}},"notifications":{"notificationList":{"noNotifications":"You have no notifications"},"services":{"suggestEditSubmit":"Suggestion was successfully submitted"},"utils":{"viewVideoDetails":"View video details","viewVideo":"View video","reviewVideos":"Review videos","viewNewContent":"View new content","reviewVideo":"Review video","seeNow":"See now"},"notifications":{"title":"Notifications","notifications":"Notifications"},"notificationsPopover":{"notifications":"Notifications","seeAll":"See all notifications"}},"playlists":{"emptyState":{"noPlaylistsHeading":"You have no playlists","noPlaylistsInfo":"Click <strong>New Playlist</strong> above to create one.","noVideosHeading":"There are no videos in this playlist","noVideosInfo":"Learn how to add videos to a playlist."},"playlistItem":{"videos":"%{smart_count} video |||| %{smart_count} videos","lastUpdated":"Last updated: %{timeAgo}","notUpdatedRecently":"Last updated over a month ago"},"playlistSortSelect":{"recentlyUpdated":"Recently updated","atoz":"A to Z","ztoa":"Z to A","newest":"Newest","oldest":"Oldest"},"hooks":{"somethingWentWrong":"Something went wrong"},"validation":{"nameExceeds":"Name is too long","nameRequired":"Name is required","descriptionExceeds":"Description is too long"}},"search":{"searchTips":{"heading":"Search Tips","firstTerm":"\"atomic bonding\"","firstDescription":"Search for exact phrases using quotation marks","secondTerm":"\"romeo and juliet\" english","secondDescription":"Combine normal and exact phrases together","thirdTerm":"-pollution","thirdDescription":"Exclude a keyword from your search","fourthTerm1":"tag:literature","fourthTerm2":"folder:science","fourthDescription":"Search for results within a tag, folder or series","fifthTerm":"folder:-physics","fifthDescription":"Use a \"-\" to exclude a folder, title or series"},"services":{"folderTag":"This folder","seriesTag":"This series"},"searchBar":{"findingResults":"Finding results...","recentSearches":"Recent Searches","allResults":"Show all results for","noLibraries":"There are currently no libraries to search. Add a new library to get started.","placeholder":"Search within your library... |||| Search within your libraries...","classifications":"topics","videos":"videos","tags":"tags","series":"series"}},"upload":{"fileType":{"heading":"Invalid file type","body":"Sorry but you cannot upload files of that type.","okay":"Okay","close":"Close"},"internetConnectivityError":{"title":"Internet connectivity issue","heading":"Connectivity issue.","body":"There seems to be an issue with your internet connection. Please try uploading your files again.","okay":"Okay"},"utils":{"videoProcessingError":"Something went wrong processing this video.","waiting":"Waiting to be processed","processing":"Processing %{progress}%","complete":"Complete","readyToWatch":"Ready to watch, still processing higher resolutions."}},"shared":{"backButton":{"back":"Back","backTo":"Back to %{backToName}"},"badges":{"interactive":"Interactive","resources":"Resources"},"
|
|
1
|
+
{"subjects":{"selectPresentation":{"heading":"Select a presentation to view its %{objectType}:"},"comingSoon":{"comingSoon":"Coming Soon","info":"We are currently building this topic. In the meantime, we can remind you when it's available.","remindMe":"Remind Me"},"heroVideo":{"resourcesHeading":"Resources","linksHeading":"Links","clipsHeading":"Clips","tagsHeading":"Tags","links":"%{smart_count} link |||| %{smart_count} links","resources":"%{smart_count} resource |||| %{smart_count} resources","clips":"%{smart_count} clip |||| %{smart_count} clips","heading":"Featured video"}},"notifications":{"notificationList":{"noNotifications":"You have no notifications"},"services":{"suggestEditSubmit":"Suggestion was successfully submitted"},"utils":{"viewVideoDetails":"View video details","viewVideo":"View video","reviewVideos":"Review videos","viewNewContent":"View new content","reviewVideo":"Review video","seeNow":"See now"},"notifications":{"title":"Notifications","notifications":"Notifications"},"notificationsPopover":{"notifications":"Notifications","seeAll":"See all notifications"}},"playlists":{"emptyState":{"noPlaylistsHeading":"You have no playlists","noPlaylistsInfo":"Click <strong>New Playlist</strong> above to create one.","noVideosHeading":"There are no videos in this playlist","noVideosInfo":"Learn how to add videos to a playlist."},"playlistItem":{"videos":"%{smart_count} video |||| %{smart_count} videos","lastUpdated":"Last updated: %{timeAgo}","notUpdatedRecently":"Last updated over a month ago"},"playlistSortSelect":{"recentlyUpdated":"Recently updated","atoz":"A to Z","ztoa":"Z to A","newest":"Newest","oldest":"Oldest"},"hooks":{"somethingWentWrong":"Something went wrong"},"validation":{"nameExceeds":"Name is too long","nameRequired":"Name is required","descriptionExceeds":"Description is too long"}},"search":{"searchTips":{"heading":"Search Tips","firstTerm":"\"atomic bonding\"","firstDescription":"Search for exact phrases using quotation marks","secondTerm":"\"romeo and juliet\" english","secondDescription":"Combine normal and exact phrases together","thirdTerm":"-pollution","thirdDescription":"Exclude a keyword from your search","fourthTerm1":"tag:literature","fourthTerm2":"folder:science","fourthDescription":"Search for results within a tag, folder or series","fifthTerm":"folder:-physics","fifthDescription":"Use a \"-\" to exclude a folder, title or series"},"services":{"folderTag":"This folder","seriesTag":"This series"},"searchBar":{"findingResults":"Finding results...","recentSearches":"Recent Searches","allResults":"Show all results for","noLibraries":"There are currently no libraries to search. Add a new library to get started.","placeholder":"Search within your library... |||| Search within your libraries...","classifications":"topics","videos":"videos","tags":"tags","series":"series"}},"upload":{"fileType":{"heading":"Invalid file type","body":"Sorry but you cannot upload files of that type.","okay":"Okay","close":"Close"},"internetConnectivityError":{"title":"Internet connectivity issue","heading":"Connectivity issue.","body":"There seems to be an issue with your internet connection. Please try uploading your files again.","okay":"Okay"},"utils":{"videoProcessingError":"Something went wrong processing this video.","waiting":"Waiting to be processed","processing":"Processing %{progress}%","complete":"Complete","readyToWatch":"Ready to watch, still processing higher resolutions."}},"shared":{"backButton":{"back":"Back","backTo":"Back to %{backToName}"},"badges":{"interactive":"Interactive","resources":"Resources"},"curriculumLinks":{"curriculumLinks":"Curriculum Links","seeLess":"See less"},"editVideoDetails":{"nameExceeds":"Name is too long","nameRequired":"Name is required","descriptionExceeds":"Description is too long","namePlaceholder":"Enter a name for your video","descriptionPlaceholder":"Enter a description for your video","cancel":"Cancel","nameLabel":"Title","descriptionLabel":"Description"},"favouriteButton":{"favouriteError":"Failed to favourite video.","unfavouriteError":"Failed to unfavourite video."},"formButtons":{"create":"Create","save":"Save","next":"Next"},"pagination":{"next":"Next","previous":"Previous"},"searchBar":{"placeholder":"Enter a search query","recentSearchHeading":"Recent Searches"},"videoItemDescription":{"showMore":"... Show more","showLess":"Show less"},"dynamicWidget":{"topics":"Topics","teach":"What would you like to teach?","preferencesTooltip":"Update your preferences"},"fixedWidget":{"preferencesTooltip":"Update your preferences"},"greeting":{"morning":"Good morning","afternoon":"Good afternoon","evening":"Good evening","fallback":"Hello","prompt":"What would you like to teach today?"},"interactiveWidgetItem":{"previewQuestions":"Preview Questions"},"subjectWidgetItem":{"comingSoon":"Coming Soon","edit":"Edit My Subjects","all":"Explore all subjects"},"_pagination":{"next":"Next","previous":"Previous"},"shared-utils":{"responsive":"Responsive","small":"Small","medium":"Medium","large":"Large"},"videoActionsHelper":{"addToPlaylist":"Add to playlist","removeFromPlaylist":"Remove from playlist","share":"Share","edit":"Edit"}}}
|
|
@@ -60,9 +60,6 @@ export declare enum UserAction {
|
|
|
60
60
|
Favourite = "cv_product_favourite",
|
|
61
61
|
Follow = "cv_product_follow",
|
|
62
62
|
Prefer = "cv_product_prefer",
|
|
63
|
-
Print = "cv_product_print",
|
|
64
|
-
Copy = "cv_product_copy",
|
|
65
|
-
Activate = "cv_product_activate",
|
|
66
63
|
SetAccess = "cv_product_set_access",
|
|
67
64
|
AddToLocalCache = "cv_product_add_to_lc",
|
|
68
65
|
/**
|
|
@@ -142,8 +139,8 @@ export declare enum LocationContext {
|
|
|
142
139
|
MigrationWarnings = "migration_warnings",
|
|
143
140
|
PlaylistListHeader = "playlist_list_header",
|
|
144
141
|
PlaylistListItem = "playlist_list_item",
|
|
145
|
-
|
|
146
|
-
|
|
142
|
+
TeacherManager = "teacher_manager",
|
|
143
|
+
TeacherManagerListItem = "teacher_manager_list_item",
|
|
147
144
|
StudentManager = "student_manager",
|
|
148
145
|
StudentManagerListItem = "student_manager_list_item",
|
|
149
146
|
ClassroomsList = "classrooms_list",
|
|
@@ -155,7 +152,6 @@ export declare enum LocationContext {
|
|
|
155
152
|
ManageClassroomGroups = "manage_classroom_groups",
|
|
156
153
|
ManageClassroomGroupListItem = "manage_classroom_group_list_item",
|
|
157
154
|
PlayPage = "play_page",
|
|
158
|
-
Player = "player",
|
|
159
155
|
FloatingPlayer = "floating_player",
|
|
160
156
|
InteractivePlayer = "interactive_player",
|
|
161
157
|
EmbeddedPlayer = "embedded_player",
|
|
@@ -281,8 +277,7 @@ export declare enum SuggestionDescriptor {
|
|
|
281
277
|
export declare enum AssocDescriptor {
|
|
282
278
|
Image = "image",
|
|
283
279
|
User = "user",
|
|
284
|
-
Playlist = "playlist"
|
|
285
|
-
Link = "link"
|
|
280
|
+
Playlist = "playlist"
|
|
286
281
|
}
|
|
287
282
|
export declare enum ToggleDescriptor {
|
|
288
283
|
On = "on",
|
|
@@ -95,5 +95,5 @@ export declare class BaseAppRouter extends Marionette.AppRouter {
|
|
|
95
95
|
private toMethodName;
|
|
96
96
|
private validateAppLink;
|
|
97
97
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
98
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
98
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
99
99
|
}
|
|
@@ -72,5 +72,5 @@ export declare class BaseApplication extends Marionette.Application {
|
|
|
72
72
|
protected setDefaultQueryParams(params: ObjectHash): void;
|
|
73
73
|
getAndClearDefaultQueryParams(): ObjectHash;
|
|
74
74
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
75
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
75
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
76
76
|
}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import * as Marionette from 'backbone.marionette';
|
|
3
3
|
export declare class BaseBehavior extends Marionette.Behavior {
|
|
4
4
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
5
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
5
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
6
6
|
}
|
|
@@ -3,5 +3,5 @@ import { BaseModel } from './BaseModel';
|
|
|
3
3
|
export declare class BaseCollection<TModel extends BaseModel = BaseModel> extends Backbone.Collection<TModel> {
|
|
4
4
|
parent?: BaseModel | BaseCollection;
|
|
5
5
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
6
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
6
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
7
7
|
}
|
|
@@ -12,5 +12,5 @@ export declare class BaseCollectionView<TModel extends BaseModel = BaseModel, TV
|
|
|
12
12
|
serializeModel(): any;
|
|
13
13
|
serializeCollection(): any[];
|
|
14
14
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
15
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
15
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
16
16
|
}
|
|
@@ -6,6 +6,6 @@ export interface BaseLayoutViewOptions extends BaseViewOptions {
|
|
|
6
6
|
export declare class BaseLayoutView extends BaseView {
|
|
7
7
|
protected options: BaseLayoutViewOptions;
|
|
8
8
|
constructor(options: BaseLayoutViewOptions);
|
|
9
|
-
static getCacheKey(options
|
|
9
|
+
static getCacheKey(options: BaseLayoutViewOptions): string;
|
|
10
10
|
unmountRegion(regionName: string): void;
|
|
11
11
|
}
|
|
@@ -23,5 +23,5 @@ export declare class BaseModel extends Backbone.Model {
|
|
|
23
23
|
preValidate: (attr: any, value: any) => any;
|
|
24
24
|
validate(attributes?: any, options?: any): any;
|
|
25
25
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
26
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
26
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
27
27
|
}
|
|
@@ -12,7 +12,7 @@ export declare class BaseNestedModel extends BaseModel {
|
|
|
12
12
|
protected associations: {
|
|
13
13
|
[name: string]: Association;
|
|
14
14
|
};
|
|
15
|
-
set(key: string |
|
|
15
|
+
set(key: string | object, value?: any | ModelSetOptions, options?: BaseNestedModelOptions): BaseNestedModel;
|
|
16
16
|
get(attributeName: string): any;
|
|
17
17
|
setAssociation(key: string, value: any, options: BaseNestedModelOptions): BaseModel | BaseCollection<BaseModel>;
|
|
18
18
|
toJSON(...args: any[]): ObjectHash;
|
|
@@ -6,5 +6,5 @@ export declare class BaseService extends Marionette.Object {
|
|
|
6
6
|
name: string;
|
|
7
7
|
constructor(options?: BaseServiceOptions);
|
|
8
8
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
9
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
9
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
10
10
|
}
|
|
@@ -74,7 +74,7 @@ export declare class CoreView<TModel extends BaseModel = BaseModel> extends Mari
|
|
|
74
74
|
constructor(options?: BaseViewOptions<TModel>);
|
|
75
75
|
appLinks: AppLinkHash;
|
|
76
76
|
normalizeUIKeys: (hash: UIHash) => UIHash;
|
|
77
|
-
static AddViewDataExtension(ext:
|
|
77
|
+
static AddViewDataExtension(ext: Function | Backbone.ObjectHash): void;
|
|
78
78
|
serializeModel(): any;
|
|
79
79
|
serializeCollection(): any[];
|
|
80
80
|
/**
|
|
@@ -99,7 +99,7 @@ export declare class CoreView<TModel extends BaseModel = BaseModel> extends Mari
|
|
|
99
99
|
private hasPartialLoadingRegions;
|
|
100
100
|
protected renderPartialLoading(region?: string): void;
|
|
101
101
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
102
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
102
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
103
103
|
render(): CoreView<TModel>;
|
|
104
104
|
/** backbone.stickit stuff that is mixed in at run time.
|
|
105
105
|
*
|
|
@@ -27,5 +27,5 @@ export declare class LayoutService extends Marionette.Object {
|
|
|
27
27
|
*/
|
|
28
28
|
private checkRequiredRegions;
|
|
29
29
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
30
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
30
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
31
31
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/// <reference types="backbone" />
|
|
2
|
-
declare function ListenToRadio(obj: string | Backbone.Events, events: string, callback:
|
|
2
|
+
declare function ListenToRadio(obj: string | Backbone.Events, events: string, callback: Function, originalListenTo: Function): any;
|
|
3
3
|
export { ListenToRadio };
|
|
@@ -74,6 +74,6 @@ export declare class Shell extends Marionette.Application {
|
|
|
74
74
|
store: Store;
|
|
75
75
|
registerStore(store: Store): void;
|
|
76
76
|
listenTo(object: any, eventMap: Backbone.EventMap): this;
|
|
77
|
-
listenTo(obj: string | Backbone.Events, events: string, callback:
|
|
77
|
+
listenTo(obj: string | Backbone.Events, events: string, callback: Function): this;
|
|
78
78
|
}
|
|
79
79
|
export {};
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { ObjectHash } from 'backbone';
|
|
2
|
-
import { HashObject } from "../../react/interfaces";
|
|
3
2
|
export interface BaseCollectionIdentifierOptions<T> {
|
|
4
3
|
collectionPrefix?: string;
|
|
5
4
|
id?: string;
|
|
6
5
|
sort?: T;
|
|
7
6
|
cursor?: string;
|
|
8
7
|
}
|
|
9
|
-
export declare class BaseCollectionIdentifier<T =
|
|
8
|
+
export declare class BaseCollectionIdentifier<T = {}> {
|
|
10
9
|
id: string;
|
|
11
10
|
sort: T;
|
|
12
11
|
cursor: string;
|
|
@@ -9,7 +9,7 @@ export interface DataProviderResponseOptions {
|
|
|
9
9
|
export interface DataProvider extends Marionette.Object {
|
|
10
10
|
parseError(...args: any[]): DataServiceError;
|
|
11
11
|
create<T>(resource: string, obj: T, options: DataProviderResponseOptions): void;
|
|
12
|
-
read(resource: string, options: DataProviderResponseOptions): void;
|
|
12
|
+
read<T>(resource: string, options: DataProviderResponseOptions): void;
|
|
13
13
|
update<T>(resource: string, obj: T, options: DataProviderResponseOptions): void;
|
|
14
14
|
delete(resource: string, options: DataProviderResponseOptions): void;
|
|
15
15
|
}
|
|
@@ -16,7 +16,7 @@ declare class StaticLanguageService extends BaseService {
|
|
|
16
16
|
get name(): string;
|
|
17
17
|
setConfig(config: LanguageConfig): void;
|
|
18
18
|
getPhrase(namespace: string, phraseKey: string, options?: LanguageInterpolationOptions): string;
|
|
19
|
-
encloseNamespace(namespace: string):
|
|
19
|
+
encloseNamespace(namespace: string): Function;
|
|
20
20
|
}
|
|
21
21
|
export declare const LanguageService: StaticLanguageService;
|
|
22
22
|
export {};
|
|
@@ -26,6 +26,6 @@ export declare class AjaxDataProvider extends Marionette.Object implements DataP
|
|
|
26
26
|
delete(resource: string, options: DataProviderResponseOptions): void;
|
|
27
27
|
useMiddleware(name: string, callback: MiddlewareCallback): void;
|
|
28
28
|
useErrorMiddleware(name: string, callback: MiddlewareCallback): void;
|
|
29
|
-
parseError(jqXHR: JQuery.jqXHR): DataServiceError;
|
|
29
|
+
parseError(jqXHR: JQuery.jqXHR, textStatus: string, errorThrown: any): DataServiceError;
|
|
30
30
|
}
|
|
31
31
|
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as _ from 'underscore';
|
|
2
2
|
export declare const FunctionHelper: {
|
|
3
|
-
debounce<T extends
|
|
4
|
-
throttle<T_1 extends
|
|
3
|
+
debounce<T extends Function>(fn: T, wait: number, immediate?: boolean): T & _.Cancelable;
|
|
4
|
+
throttle<T_1 extends Function>(fn: T_1, wait: number, options?: _.ThrottleSettings): T_1 & _.Cancelable;
|
|
5
5
|
isFunction(object: any): object is Function;
|
|
6
6
|
useIdentity<T_2>(): (...args: any[]) => T_2;
|
|
7
|
-
memoize<T_3 =
|
|
7
|
+
memoize<T_3 = Function>(fn: T_3, hashFn?: (...args: any[]) => string): T_3;
|
|
8
8
|
};
|
|
@@ -7,5 +7,5 @@ interface MiddlewareOptions {
|
|
|
7
7
|
bootstrappedData?: HashObject;
|
|
8
8
|
defaultExpiryTime?: number;
|
|
9
9
|
}
|
|
10
|
-
export declare function createMiddleware(options: MiddlewareOptions): Middleware<
|
|
10
|
+
export declare function createMiddleware(options: MiddlewareOptions): Middleware<{}, ApplicationState, Dispatch<AnyAction>>;
|
|
11
11
|
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import * as _ from 'underscore';
|
|
3
|
-
import { HashObject } from '../interfaces';
|
|
4
3
|
declare type Iterator<T, TResult = T> = (value: T, index: number, list: T[]) => TResult;
|
|
5
4
|
export declare const ArrayHelper: {
|
|
6
5
|
first<T>(arr: T[]): T;
|
|
@@ -12,8 +11,8 @@ export declare const ArrayHelper: {
|
|
|
12
11
|
moveItem<T_6>(arr: T_6[], fromIdx: number, toIdx: number): T_6[];
|
|
13
12
|
isEmpty<T_7>(arr: T_7[]): boolean;
|
|
14
13
|
findIndex<T_8>(arr: T_8[], predicate: (item: T_8) => boolean): number;
|
|
15
|
-
findWhere<T_9, U extends
|
|
16
|
-
where<T_10, U_1 extends
|
|
14
|
+
findWhere<T_9, U extends {}>(arr: T_9[], properties: U): T_9;
|
|
15
|
+
where<T_10, U_1 extends {}>(arr: T_10[], properties: U_1): T_10[];
|
|
17
16
|
groupBy<T_11>(arr: T_11[], property: string): {
|
|
18
17
|
[index: string]: T_11[];
|
|
19
18
|
};
|
|
@@ -38,7 +37,7 @@ export declare const ArrayHelper: {
|
|
|
38
37
|
* @param arr array of values
|
|
39
38
|
* @param iteratee an iterator function or a string name of the property to sort by.
|
|
40
39
|
*/
|
|
41
|
-
sortBy<T_16 extends
|
|
40
|
+
sortBy<T_16 extends {}, TSort = T_16>(arr: T_16[], iteratee?: Iterator<T_16, TSort> | keyof T_16): T_16[];
|
|
42
41
|
chunk<T_17>(array: _.Collection<T_17>, count: number): T_17[][];
|
|
43
42
|
uniq<T_18>(array: _.List<T_18>): T_18[];
|
|
44
43
|
};
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { ButtonProps } from 'react-bootstrap';
|
|
3
2
|
import { PopupViewProps } from "../../interfaces";
|
|
4
3
|
interface ConfirmationPopupProps {
|
|
5
4
|
title: string;
|
|
6
5
|
onClickConfirm: () => void;
|
|
7
6
|
confirmButtonText?: string;
|
|
8
7
|
cancelButtonText?: string;
|
|
9
|
-
confirmButtonVariant?: ButtonProps['variant'];
|
|
10
|
-
cancelButtonVariant?: ButtonProps['variant'];
|
|
11
8
|
}
|
|
12
9
|
declare type PropTypes = React.PropsWithChildren<ConfirmationPopupProps & PopupViewProps>;
|
|
13
10
|
export declare function ConfirmationPopup(props: PropTypes): React.ReactElement;
|
|
14
11
|
export declare namespace ConfirmationPopup {
|
|
15
12
|
var defaultProps: {
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
confirmButtonText: string;
|
|
14
|
+
cancelButtonText: string;
|
|
18
15
|
};
|
|
19
16
|
}
|
|
20
17
|
export {};
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ButtonProps } from 'react-bootstrap';
|
|
3
|
-
import { HashObject } from "../../../../../common/src/react/interfaces";
|
|
4
3
|
interface FormButtonsProps {
|
|
5
4
|
isNew: boolean;
|
|
6
5
|
hasNext?: boolean;
|
|
7
6
|
submitText?: string;
|
|
8
7
|
variant?: ButtonProps['variant'];
|
|
9
8
|
}
|
|
10
|
-
export declare function FormButtons<Values extends
|
|
9
|
+
export declare function FormButtons<Values extends object>(props: FormButtonsProps): JSX.Element;
|
|
11
10
|
export {};
|
|
@@ -4,4 +4,4 @@ import { FormFieldProps } from '../form-field/FormField';
|
|
|
4
4
|
/**
|
|
5
5
|
* Use this checkbox within Formik contexts
|
|
6
6
|
*/
|
|
7
|
-
export declare function FormCheckbox(props: FieldAttributes<FormFieldProps
|
|
7
|
+
export declare function FormCheckbox<Values extends object>(props: FieldAttributes<FormFieldProps<Values>>): JSX.Element;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
interface CharacterCounterProps<Values extends HashObject> {
|
|
2
|
+
interface CharacterCounterProps<Values extends object> {
|
|
4
3
|
fieldName: keyof Values;
|
|
5
4
|
limit: number;
|
|
6
5
|
}
|
|
7
|
-
export declare function CharacterCounter<Values extends
|
|
6
|
+
export declare function CharacterCounter<Values extends object>(props: CharacterCounterProps<Values>): JSX.Element;
|
|
8
7
|
export {};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { FieldAttributes, FieldProps } from 'formik';
|
|
3
|
-
|
|
4
|
-
export interface FormFieldProps {
|
|
3
|
+
export interface FormFieldProps<Values extends object> {
|
|
5
4
|
/**
|
|
6
5
|
* The name prop MUST be the same as the attribute
|
|
7
6
|
* name of the value that the field is bound to.
|
|
@@ -11,7 +10,7 @@ export interface FormFieldProps {
|
|
|
11
10
|
children?: ((props: FieldProps) => React.ReactNode) | React.ReactNode;
|
|
12
11
|
showCharacterCounter?: boolean;
|
|
13
12
|
}
|
|
14
|
-
export declare function FieldWrapper(props: FieldAttributes<FormFieldProps
|
|
13
|
+
export declare function FieldWrapper<Values extends object>(props: FieldAttributes<FormFieldProps<Values>> & {
|
|
15
14
|
className: string;
|
|
16
15
|
}): React.ReactElement;
|
|
17
|
-
export declare function FormField<Values extends
|
|
16
|
+
export declare function FormField<Values extends object>(props: FieldAttributes<FormFieldProps<Values>>): React.ReactElement;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { FormikValues, FormikConfig, FormikContextType } from 'formik';
|
|
3
|
-
import { HashObject } from "../../../../../common/src/react/interfaces";
|
|
4
3
|
declare type ModifiedFormikConfig<Values extends FormikValues> = Omit<FormikConfig<Values>, 'initialValues' | 'onSubmit'>;
|
|
5
4
|
interface FormWrapperProps<FormValues extends FormikValues, ApiValues extends FormikValues> {
|
|
6
5
|
initialValues: FormValues | ApiValues;
|
|
@@ -10,7 +9,7 @@ interface FormWrapperProps<FormValues extends FormikValues, ApiValues extends Fo
|
|
|
10
9
|
allowInitialSubmit?: boolean;
|
|
11
10
|
resetOnSubmit?: boolean;
|
|
12
11
|
}
|
|
13
|
-
export declare function FormWrapper<FormValues extends FormikValues = FormikValues, ApiValues extends FormikValues = FormikValues, ExtraProps =
|
|
12
|
+
export declare function FormWrapper<FormValues extends FormikValues = FormikValues, ApiValues extends FormikValues = FormikValues, ExtraProps = {}>(props: ModifiedFormikConfig<FormValues> & ExtraProps & FormWrapperProps<FormValues, ApiValues>): JSX.Element;
|
|
14
13
|
export declare namespace FormWrapper {
|
|
15
14
|
var defaultProps: {
|
|
16
15
|
castInitialValues: boolean;
|
|
@@ -1,17 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { HashObject } from "../../../../common/src/react/interfaces";
|
|
3
|
-
import { Core } from "../../../../common/src/backbone";
|
|
4
|
-
import { AnalyticsOptions } from "../../../../analytics/src/interfaces";
|
|
5
|
-
export interface HeaderButton {
|
|
6
|
-
appLink?: Core.AppLink;
|
|
7
|
-
onClick?: (e: React.MouseEvent) => void;
|
|
8
|
-
svgName?: string;
|
|
9
|
-
className?: string;
|
|
10
|
-
tooltip?: string;
|
|
11
|
-
showSpinner?: boolean;
|
|
12
|
-
analyticsData?: HashObject;
|
|
13
|
-
analyticsOptions?: AnalyticsOptions;
|
|
14
|
-
}
|
|
15
2
|
interface PopupProps {
|
|
16
3
|
title?: string;
|
|
17
4
|
closeButton?: boolean;
|
|
@@ -19,7 +6,6 @@ interface PopupProps {
|
|
|
19
6
|
onEntered?: () => void;
|
|
20
7
|
size?: 'sm' | 'lg' | 'xl';
|
|
21
8
|
showLoadingSpinner?: boolean;
|
|
22
|
-
headerButtons?: HeaderButton[];
|
|
23
9
|
}
|
|
24
10
|
export declare function Popup(props: React.PropsWithChildren<PopupProps>): React.ReactElement;
|
|
25
11
|
export declare namespace Popup {
|
|
@@ -105,18 +105,6 @@ export interface SearchBarProps<T extends HashObject> {
|
|
|
105
105
|
* which side to render it on. Defaults to `right` in `defaultProps`
|
|
106
106
|
*/
|
|
107
107
|
searchIconPlacement?: 'left' | 'right' | false;
|
|
108
|
-
/**
|
|
109
|
-
* If true, a cross svg will be rendered.
|
|
110
|
-
* Clicking this icon will reset the query.
|
|
111
|
-
*/
|
|
112
|
-
showClearInputIcon?: boolean;
|
|
113
|
-
/**
|
|
114
|
-
* Optional callback function to be called when the clear input
|
|
115
|
-
* icon is clicked.
|
|
116
|
-
* The query will be reset automatically, this callback is for
|
|
117
|
-
* adding additional functionality.
|
|
118
|
-
*/
|
|
119
|
-
onClickClearInput?: () => void;
|
|
120
108
|
/**
|
|
121
109
|
* Flag to determine whether clicking the search icon should trigger
|
|
122
110
|
* submitting the search query.
|
|
@@ -126,22 +114,11 @@ export interface SearchBarProps<T extends HashObject> {
|
|
|
126
114
|
* Flag to determine whether the search input should be autofocused.
|
|
127
115
|
*/
|
|
128
116
|
autoFocusInput?: boolean;
|
|
129
|
-
/**
|
|
130
|
-
* If true, the default Bootstrap styling will be applied when the
|
|
131
|
-
* input is focused.
|
|
132
|
-
*/
|
|
133
|
-
highlightInputOnFocus?: boolean;
|
|
134
117
|
/**
|
|
135
118
|
* When true, the input field will be cleared whenever a suggestion is selected.
|
|
136
119
|
*/
|
|
137
120
|
clearQueryOnSelect?: boolean;
|
|
138
121
|
onBackspace?: () => void;
|
|
139
|
-
/**
|
|
140
|
-
* When true, the search input will be wrapped in a <form />.
|
|
141
|
-
* This is true by default.
|
|
142
|
-
* If rendering <SearchBar /> within another form, set this to false.
|
|
143
|
-
*/
|
|
144
|
-
renderAsForm?: boolean;
|
|
145
122
|
}
|
|
146
123
|
export declare function SearchBar<T extends HashObject>(props: SearchBarProps<T>): JSX.Element;
|
|
147
124
|
export declare namespace SearchBar {
|
|
@@ -153,6 +130,5 @@ export declare namespace SearchBar {
|
|
|
153
130
|
recentSearches: any[];
|
|
154
131
|
initialSuggestions: any[];
|
|
155
132
|
searchIconPlacement: string;
|
|
156
|
-
renderAsForm: boolean;
|
|
157
133
|
};
|
|
158
134
|
}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import * as Autosuggest from 'react-autosuggest';
|
|
3
|
-
|
|
4
|
-
interface SearchInputProps<T> extends Autosuggest.InputProps<T> {
|
|
3
|
+
interface SearchInputProps {
|
|
5
4
|
onClickSearchIcon?: () => void;
|
|
6
5
|
searchIconPlacement?: 'left' | 'right' | false;
|
|
7
|
-
showClearInputIcon?: boolean;
|
|
8
|
-
onClickClearInput?: () => void;
|
|
9
|
-
highlightOnFocus?: boolean;
|
|
10
6
|
}
|
|
11
|
-
export declare function SearchInput<T extends
|
|
7
|
+
export declare function SearchInput<T extends {}>(props: SearchInputProps & Autosuggest.InputProps<T>): JSX.Element;
|
|
12
8
|
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare type PermissionsLookup = {
|
|
2
|
+
[key in PermissionName]: boolean;
|
|
3
|
+
};
|
|
4
|
+
export declare enum PermissionName {
|
|
5
|
+
ManageUsers = "users.manage",
|
|
6
|
+
FollowSubjects = "subjects.follow",
|
|
7
|
+
ManageSubjectPreferences = "subjects.preferences.manage",
|
|
8
|
+
CreateClassrooms = "classrooms.create",
|
|
9
|
+
ViewClassrooms = "classrooms.view",
|
|
10
|
+
SharePlaylists = "playlists.share",
|
|
11
|
+
CreatePlaylists = "playlists.create",
|
|
12
|
+
ViewPlaylists = "playlists.view",
|
|
13
|
+
FollowPlaylists = "playlists.follow",
|
|
14
|
+
ViewVideos = "videos.view",
|
|
15
|
+
ShareVideos = "videos.share",
|
|
16
|
+
UploadVideos = "videos.upload",
|
|
17
|
+
FavouriteVideos = "videos.favourite",
|
|
18
|
+
CreateInteractives = "interactives.create",
|
|
19
|
+
ViewInteractives = "interactives.view",
|
|
20
|
+
CreateClips = "clips.create",
|
|
21
|
+
ViewClips = "clips.view",
|
|
22
|
+
EditProfile = "settings.editprofile"
|
|
23
|
+
}
|
|
@@ -2,10 +2,8 @@ import { Flight } from "../../../common/src/react";
|
|
|
2
2
|
import { HashObject } from "../../../common/src/react/interfaces/HashObject";
|
|
3
3
|
import { Xhr } from "../../../common/src/backbone/interfaces";
|
|
4
4
|
import { Theme } from "../interfaces";
|
|
5
|
-
import { ThemeType } from '../enums/ThemeType';
|
|
6
5
|
export declare const ThemeRequests: {
|
|
7
6
|
theme(id: string): Flight.Request;
|
|
8
|
-
themeImages(name: string, type: ThemeType): Flight.Request;
|
|
9
7
|
themes(type?: string): Flight.Request;
|
|
10
8
|
createTheme(data: Theme, success?: (data: HashObject<any>) => void, error?: (xhr: Xhr) => void, always?: () => void): Flight.Request;
|
|
11
9
|
updateTheme(id: string, data: Theme, success?: (data: HashObject<any>) => void, error?: (xhr: Xhr) => void, always?: () => void): Flight.Request;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { Flight } from "../../../common/src/react";
|
|
2
2
|
import { CurrentUser } from "../interfaces";
|
|
3
|
-
import { HashObject } from "../../../common/src/react/interfaces";
|
|
4
3
|
export declare const UserRequests: {
|
|
5
4
|
currentUser(success?: (user: CurrentUser) => void, error?: () => void): Flight.Request;
|
|
6
|
-
workspace
|
|
5
|
+
workspace: Flight.Request;
|
|
7
6
|
sendVerificationEmail(emailAddress: string, success: () => void, error: () => void, always: () => void): Flight.Request;
|
|
8
|
-
token(success?: (token: HashObject<any>) => void, error?: () => void): Flight.Request;
|
|
9
7
|
};
|