webdav.client 5.20.5664
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/.npmignore +2 -0
- package/Help/ClassReference/Create.html +3026 -0
- package/Help/ClassReference/ITHit.Environment.html +2961 -0
- package/Help/ClassReference/ITHit.LogLevel.html +3198 -0
- package/Help/ClassReference/ITHit.Logger.html +3381 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.AsyncResult.html +3096 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.BrowserExtension.html +3493 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.CancellableResult.html +3262 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.DavConstants.html +4368 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Depth.html +3035 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.DocManager.html +4756 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Encoder.html +3006 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Error.html +3006 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.BadRequestException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.ConflictException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.DependencyFailedException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.ForbiddenException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.Error.html +2969 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.Multistatus.html +2920 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.MultistatusResponse.html +2920 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.PropertyMultistatus.html +2972 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.PropertyMultistatusResponse.html +2920 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.InsufficientStorageException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.IntegrationException.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.LockedException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.MethodNotAllowedException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.NotFoundException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.NotImplementedException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Parsers.InsufficientStorage.html +3022 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PreconditionFailedException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyConflictException.html +3147 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyException.html +3147 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyForbiddenException.html +3147 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyNotFoundException.html +3147 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.QuotaNotExceededException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.SufficientDiskSpaceException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.UnauthorizedException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.WebDavException.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.WebDavHttpException.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Features.html +3423 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.File.html +9512 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Folder.html +11207 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.HierarchyItem.html +8575 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.HttpStatus.html +4945 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.LockInfo.html +3141 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.LockScope.html +3020 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.LockUriTokenPair.html +3006 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.CancelUpload.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.CopyMove.html +2967 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Delete.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.ErrorResponse.html +2968 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Get.GoAsync.html +3047 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Get.html +2921 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Head.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.HttpMethod.html +2982 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Lock.Go.html +3083 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Lock.GoAsync.html +3101 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Lock.html +2924 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.LockRefresh.Go.html +3083 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.LockRefresh.GoAsync.html +3101 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.LockRefresh.html +2924 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Mkcol.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.MultiResponse.html +2968 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Options.html +2965 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Propfind.html +2967 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Proppatch.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Propstat.html +2950 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Put.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Report.html +2978 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Response.html +2968 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.ResponseFactory.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Search.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.SingleResponse.html +2959 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Undelete.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Unlock.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.UpdateToVersion.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Methods.VersionControl.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.MsOfficeEditExtensions.html +3289 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Multistatus.html +3006 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.MultistatusResponse.html +3051 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.OptionsInfo.html +2961 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.OrderProperty.html +3172 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.PageResults.html +3006 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Property.html +3229 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.PropertyList.html +3265 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.PropertyMultistatusResponse.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.PropertyName.html +3184 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Request.html +3818 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.RequestProgress.html +3186 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.ResourceType.html +2973 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.ResumableUpload.html +3482 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.SPSManager.html +3170 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.SearchQuery.html +3186 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Source.html +3006 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.DocManager.MsOfficeEditExtensions.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.CopyMove.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.CreateFile.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.CreateFolder.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Delete.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetFolderItems.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetHeadRequests.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetItemByFolder.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetItemBySession.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetParent.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.ItemExists.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.MicrosoftOfficeDiscovery.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.NameCheck.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Progress.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Refresh.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Search.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.SupportedFeatures.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyProperties.GetProperties.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyProperties.UpdateProperties.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.CheckSupport.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.Etag.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.GetLocks.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.Lock.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.RefreshLock.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.GetVersions.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.ManageVersions.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.PutUnderVersion.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.ReadContent.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Tests.WebDavSession.Events.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.AutoUploader.html +2970 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Collections.Map.html +3130 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Collections.Pair.html +3004 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.ContentWriter.html +3158 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.DropZone.html +3012 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.FSEntryFactory.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.HtmlControl.html +3002 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.Input.html +3012 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.DropZoneCollection.html +3354 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.AsyncEvent.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.BaseEvent.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.BeforeUploadStarted.html +3242 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.Error.html +2918 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.EventName.html +3059 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.ProgressChanged.html +2918 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.QueueChanged.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.StateChanged.html +2918 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.UploadError.html +3371 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.UploadItemsCreated.html +3358 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.FSEntry.html +3039 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.FileSpan.html +3023 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Groups.Group.html +2978 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Groups.GroupManager.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.InputCollection.html +3354 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.ItemSettings.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Path.Generator.html +3102 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Path.PathCache.html +2910 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Progress.html +3186 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Providers.ProgressTracker.html +2961 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Providers.UploadDiff.html +3003 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Providers.UploadProvider.html +3049 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Queue.html +3824 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.ServerItem.html +2978 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Settings.html +3060 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.State.html +3243 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.BaseState.html +2908 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.CanceledState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.CompletedState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.Factory.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.PausedState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.QueuedState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.ResumeState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.SkippedState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.UploadingState.html +2914 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.UploadItem.html +6147 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.UploadLocation.html +2978 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Uploader.html +3314 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.UploaderSession.html +4374 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Utils.DavUrl.html +2996 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Utils.DavUrlBuilder.html +2961 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Utils.RepeatableAction.html +3077 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.UploadProgressInfo.html +3096 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.Version.html +4373 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.WebDavRequest.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.WebDavResponse.html +2912 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.WebDavSession.html +5097 -0
- package/Help/ClassReference/ITHit.WebDAV.Client.WebDavUtil.html +2912 -0
- package/Help/ClassReference/fonts/glyphicons-halflings-regular.eot +0 -0
- package/Help/ClassReference/fonts/glyphicons-halflings-regular.svg +229 -0
- package/Help/ClassReference/fonts/glyphicons-halflings-regular.ttf +0 -0
- package/Help/ClassReference/fonts/glyphicons-halflings-regular.woff +0 -0
- package/Help/ClassReference/global.html +8985 -0
- package/Help/ClassReference/index.html +3889 -0
- package/Help/ClassReference/scripts/bootstrap.min.js +7 -0
- package/Help/ClassReference/scripts/jquery.min.js +6 -0
- package/Help/ClassReference/scripts/jquery.min.map +1 -0
- package/Help/ClassReference/scripts/linenumber.js +29 -0
- package/Help/ClassReference/scripts/main.js +104 -0
- package/Help/ClassReference/scripts/prettify/Apache-License-2.0.txt +202 -0
- package/Help/ClassReference/scripts/prettify/lang-css.js +2 -0
- package/Help/ClassReference/scripts/prettify/prettify.js +28 -0
- package/Help/ClassReference/scripts/underscore-min.js +6 -0
- package/Help/ClassReference/scripts/underscore-min.map +1 -0
- package/Help/ClassReference/styles/bootstrap.min.css +7 -0
- package/Help/ClassReference/styles/jaguar.css +406 -0
- package/Help/ClassReference/styles/prettify-jsdoc.css +111 -0
- package/Help/ClassReference/styles/prettify-tomorrow.css +132 -0
- package/Help/index.html +6 -0
- package/IT Hit WebDAV AJAX Library License Agreement.rtf +314 -0
- package/ITHitWebDAVClient.js +87 -0
- package/Plugins/ITHitEditDocumentOpener.deb +0 -0
- package/Plugins/ITHitEditDocumentOpener.msi +0 -0
- package/Plugins/ITHitEditDocumentOpener.pkg +0 -0
- package/Plugins/ITHitEditDocumentOpener.rpm +0 -0
- package/README.md +98 -0
- package/Tests/DocManager/MsOfficeEditExtensions.js +53 -0
- package/Tests/Helper.js +214 -0
- package/Tests/HierarchyItems/CopyMove.js +341 -0
- package/Tests/HierarchyItems/CreateFile.js +157 -0
- package/Tests/HierarchyItems/CreateFolder.js +156 -0
- package/Tests/HierarchyItems/Delete.js +73 -0
- package/Tests/HierarchyItems/GetFolderItems.js +87 -0
- package/Tests/HierarchyItems/GetHeadRequests.js +73 -0
- package/Tests/HierarchyItems/GetItemByFolder.js +91 -0
- package/Tests/HierarchyItems/GetItemBySession.js +135 -0
- package/Tests/HierarchyItems/GetParent.js +58 -0
- package/Tests/HierarchyItems/ItemExists.js +73 -0
- package/Tests/HierarchyItems/MicrosoftOfficeDiscovery.js +51 -0
- package/Tests/HierarchyItems/NameCheck.js +184 -0
- package/Tests/HierarchyItems/Progress.js +89 -0
- package/Tests/HierarchyItems/Quota.js +35 -0
- package/Tests/HierarchyItems/Refresh.js +68 -0
- package/Tests/HierarchyItems/Search.js +187 -0
- package/Tests/HierarchyItems/SupportedFeatures.js +53 -0
- package/Tests/HierarchyProperties/GetProperties.js +192 -0
- package/Tests/HierarchyProperties/UpdateFolderProperties.js +138 -0
- package/Tests/HierarchyProperties/UpdateProperties.js +187 -0
- package/Tests/ITHitTests.css +72 -0
- package/Tests/ITHitTests.js +560 -0
- package/Tests/Locks/CheckSupport.js +66 -0
- package/Tests/Locks/CopyLock.js +67 -0
- package/Tests/Locks/Etag.js +277 -0
- package/Tests/Locks/GetLocks.js +117 -0
- package/Tests/Locks/Lock.js +134 -0
- package/Tests/Locks/RefreshLock.js +94 -0
- package/Tests/Upload/CancelUpload.js +34 -0
- package/Tests/Upload/GetBytesUploaded.js +47 -0
- package/Tests/Versions/GetVersions.js +84 -0
- package/Tests/Versions/ManageVersions.js +180 -0
- package/Tests/Versions/PutUnderVersion.js +98 -0
- package/Tests/Versions/ReadContent.js +82 -0
- package/Tests/WebDavSession/Events.js +125 -0
- package/Tests/index.html +9 -0
- package/Tests/qunit-runner/highlight/github.css +124 -0
- package/Tests/qunit-runner/highlight/highlight.js +1 -0
- package/Tests/qunit-runner/main.js +340 -0
- package/Tests/qunit-runner/qunit/jquery.js +10308 -0
- package/Tests/qunit-runner/qunit/qunit.css +237 -0
- package/Tests/qunit-runner/qunit/qunit.js +2495 -0
- package/package.json +25 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/*
|
|
2
|
+
|
|
3
|
+
github.com style (c) Vasily Polovnyov <vast@whiteants.net>
|
|
4
|
+
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
.hljs {
|
|
8
|
+
display: block;
|
|
9
|
+
overflow-x: auto;
|
|
10
|
+
padding: 0.5em;
|
|
11
|
+
color: #333;
|
|
12
|
+
background: #f8f8f8;
|
|
13
|
+
-webkit-text-size-adjust: none;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.hljs-comment,
|
|
17
|
+
.diff .hljs-header,
|
|
18
|
+
.hljs-javadoc {
|
|
19
|
+
color: #998;
|
|
20
|
+
font-style: italic;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.hljs-keyword,
|
|
24
|
+
.css .rule .hljs-keyword,
|
|
25
|
+
.hljs-winutils,
|
|
26
|
+
.nginx .hljs-title,
|
|
27
|
+
.hljs-subst,
|
|
28
|
+
.hljs-request,
|
|
29
|
+
.hljs-status {
|
|
30
|
+
color: #333;
|
|
31
|
+
font-weight: bold;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.hljs-number,
|
|
35
|
+
.hljs-hexcolor,
|
|
36
|
+
.ruby .hljs-constant {
|
|
37
|
+
color: #008080;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.hljs-string,
|
|
41
|
+
.hljs-tag .hljs-value,
|
|
42
|
+
.hljs-phpdoc,
|
|
43
|
+
.hljs-dartdoc,
|
|
44
|
+
.tex .hljs-formula {
|
|
45
|
+
color: #d14;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.hljs-title,
|
|
49
|
+
.hljs-id,
|
|
50
|
+
.scss .hljs-preprocessor {
|
|
51
|
+
color: #900;
|
|
52
|
+
font-weight: bold;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.hljs-list .hljs-keyword,
|
|
56
|
+
.hljs-subst {
|
|
57
|
+
font-weight: normal;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.hljs-class .hljs-title,
|
|
61
|
+
.hljs-type,
|
|
62
|
+
.vhdl .hljs-literal,
|
|
63
|
+
.tex .hljs-command {
|
|
64
|
+
color: #458;
|
|
65
|
+
font-weight: bold;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.hljs-tag,
|
|
69
|
+
.hljs-tag .hljs-title,
|
|
70
|
+
.hljs-rules .hljs-property,
|
|
71
|
+
.django .hljs-tag .hljs-keyword {
|
|
72
|
+
color: #000080;
|
|
73
|
+
font-weight: normal;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.hljs-attribute,
|
|
77
|
+
.hljs-variable,
|
|
78
|
+
.lisp .hljs-body {
|
|
79
|
+
color: #008080;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.hljs-regexp {
|
|
83
|
+
color: #009926;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.hljs-symbol,
|
|
87
|
+
.ruby .hljs-symbol .hljs-string,
|
|
88
|
+
.lisp .hljs-keyword,
|
|
89
|
+
.clojure .hljs-keyword,
|
|
90
|
+
.scheme .hljs-keyword,
|
|
91
|
+
.tex .hljs-special,
|
|
92
|
+
.hljs-prompt {
|
|
93
|
+
color: #990073;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.hljs-built_in {
|
|
97
|
+
color: #0086b3;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.hljs-preprocessor,
|
|
101
|
+
.hljs-pragma,
|
|
102
|
+
.hljs-pi,
|
|
103
|
+
.hljs-doctype,
|
|
104
|
+
.hljs-shebang,
|
|
105
|
+
.hljs-cdata {
|
|
106
|
+
color: #999;
|
|
107
|
+
font-weight: bold;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.hljs-deletion {
|
|
111
|
+
background: #fdd;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.hljs-addition {
|
|
115
|
+
background: #dfd;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.diff .hljs-change {
|
|
119
|
+
background: #0086b3;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.hljs-chunk {
|
|
123
|
+
color: #aaa;
|
|
124
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){"undefined"!=typeof exports?e(exports):(window.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return window.hljs}))}(function(e){function n(e){return e.replace(/&/gm,"&").replace(/</gm,"<").replace(/>/gm,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0==t.index}function a(e){var n=(e.className+" "+(e.parentNode?e.parentNode.className:"")).split(/\s+/);return n=n.map(function(e){return e.replace(/^lang(uage)?-/,"")}),n.filter(function(e){return N(e)||/no(-?)highlight/.test(e)})[0]}function o(e,n){var t={};for(var r in e)t[r]=e[r];if(n)for(var r in n)t[r]=n[r];return t}function i(e){var n=[];return function r(e,a){for(var o=e.firstChild;o;o=o.nextSibling)3==o.nodeType?a+=o.nodeValue.length:1==o.nodeType&&(n.push({event:"start",offset:a,node:o}),a=r(o,a),t(o).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:o}));return a}(e,0),n}function c(e,r,a){function o(){return e.length&&r.length?e[0].offset!=r[0].offset?e[0].offset<r[0].offset?e:r:"start"==r[0].event?e:r:e.length?e:r}function i(e){function r(e){return" "+e.nodeName+'="'+n(e.value)+'"'}l+="<"+t(e)+Array.prototype.map.call(e.attributes,r).join("")+">"}function c(e){l+="</"+t(e)+">"}function u(e){("start"==e.event?i:c)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=o();if(l+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g==e){f.reverse().forEach(c);do u(g.splice(0,1)[0]),g=o();while(g==e&&g.length&&g[0].offset==s);f.reverse().forEach(i)}else"start"==g[0].event?f.push(g[0].node):f.pop(),u(g.splice(0,1)[0])}return l+n(a.substr(s))}function u(e){function n(e){return e&&e.source||e}function t(t,r){return RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var c={},u=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");c[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?u("keyword",a.k):Object.keys(a.k).forEach(function(e){u(e,a.k[e])}),a.k=c}a.lR=t(a.l||/\b[A-Za-z0-9_]+\b/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(o(e,n))}):s.push("self"==e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var l=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=l.length?t(l.join("|"),!0):{exec:function(){return null}}}}r(e)}function s(e,t,a,o){function i(e,n){for(var t=0;t<n.c.length;t++)if(r(n.c[t].bR,e))return n.c[t]}function c(e,n){return r(e.eR,n)?e:e.eW?c(e.parent,n):void 0}function f(e,n){return!a&&r(n.iR,e)}function g(e,n){var t=x.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":E.classPrefix,o='<span class="'+a,i=t?"":"</span>";return o+=e+'">',o+n+i}function d(){if(!w.k)return n(y);var e="",t=0;w.lR.lastIndex=0;for(var r=w.lR.exec(y);r;){e+=n(y.substr(t,r.index-t));var a=g(w,r);a?(B+=a[1],e+=p(a[0],n(r[0]))):e+=n(r[0]),t=w.lR.lastIndex,r=w.lR.exec(y)}return e+n(y.substr(t))}function h(){if(w.sL&&!R[w.sL])return n(y);var e=w.sL?s(w.sL,y,!0,L[w.sL]):l(y);return w.r>0&&(B+=e.r),"continuous"==w.subLanguageMode&&(L[w.sL]=e.top),p(e.language,e.value,!1,!0)}function v(){return void 0!==w.sL?h():d()}function b(e,t){var r=e.cN?p(e.cN,"",!0):"";e.rB?(M+=r,y=""):e.eB?(M+=n(t)+r,y=""):(M+=r,y=t),w=Object.create(e,{parent:{value:w}})}function m(e,t){if(y+=e,void 0===t)return M+=v(),0;var r=i(t,w);if(r)return M+=v(),b(r,t),r.rB?0:t.length;var a=c(w,t);if(a){var o=w;o.rE||o.eE||(y+=t),M+=v();do w.cN&&(M+="</span>"),B+=w.r,w=w.parent;while(w!=a.parent);return o.eE&&(M+=n(t)),y="",a.starts&&b(a.starts,""),o.rE?0:t.length}if(f(t,w))throw new Error('Illegal lexeme "'+t+'" for mode "'+(w.cN||"<unnamed>")+'"');return y+=t,t.length||1}var x=N(e);if(!x)throw new Error('Unknown language: "'+e+'"');u(x);for(var w=o||x,L={},M="",k=w;k!=x;k=k.parent)k.cN&&(M=p(k.cN,"",!0)+M);var y="",B=0;try{for(var C,j,I=0;;){if(w.t.lastIndex=I,C=w.t.exec(t),!C)break;j=m(t.substr(I,C.index-I),C[0]),I=C.index+j}m(t.substr(I));for(var k=w;k.parent;k=k.parent)k.cN&&(M+="</span>");return{r:B,value:M,language:e,top:w}}catch(A){if(-1!=A.message.indexOf("Illegal"))return{r:0,value:n(t)};throw A}}function l(e,t){t=t||E.languages||Object.keys(R);var r={r:0,value:n(e)},a=r;return t.forEach(function(n){if(N(n)){var t=s(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}}),a.language&&(r.second_best=a),r}function f(e){return E.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,n){return n.replace(/\t/g,E.tabReplace)})),E.useBR&&(e=e.replace(/\n/g,"<br>")),e}function g(e,n,t){var r=n?x[n]:t,a=[e.trim()];return e.match(/(\s|^)hljs(\s|$)/)||a.push("hljs"),r&&a.push(r),a.join(" ").trim()}function p(e){var n=a(e);if(!/no(-?)highlight/.test(n)){var t;E.useBR?(t=document.createElementNS("http://www.w3.org/1999/xhtml","div"),t.innerHTML=e.innerHTML.replace(/\n/g,"").replace(/<br[ \/]*>/g,"\n")):t=e;var r=t.textContent,o=n?s(n,r,!0):l(r),u=i(t);if(u.length){var p=document.createElementNS("http://www.w3.org/1999/xhtml","div");p.innerHTML=o.value,o.value=c(u,i(p),r)}o.value=f(o.value),e.innerHTML=o.value,e.className=g(e.className,n,o.language),e.result={language:o.language,re:o.r},o.second_best&&(e.second_best={language:o.second_best.language,re:o.second_best.r})}}function d(e){E=o(E,e)}function h(){if(!h.called){h.called=!0;var e=document.querySelectorAll("pre code");Array.prototype.forEach.call(e,p)}}function v(){addEventListener("DOMContentLoaded",h,!1),addEventListener("load",h,!1)}function b(n,t){var r=R[n]=t(e);r.aliases&&r.aliases.forEach(function(e){x[e]=n})}function m(){return Object.keys(R)}function N(e){return R[e]||R[x[e]]}var E={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},R={},x={};return e.highlight=s,e.highlightAuto=l,e.fixMarkup=f,e.highlightBlock=p,e.configure=d,e.initHighlighting=h,e.initHighlightingOnLoad=v,e.registerLanguage=b,e.listLanguages=m,e.getLanguage=N,e.inherit=o,e.IR="[a-zA-Z][a-zA-Z0-9_]*",e.UIR="[a-zA-Z_][a-zA-Z0-9_]*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/},e.CLCM={cN:"comment",b:"//",e:"$",c:[e.PWM]},e.CBCM={cN:"comment",b:"/\\*",e:"\\*/",c:[e.PWM]},e.HCM={cN:"comment",b:"#",e:"$",c:[e.PWM]},e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e});hljs.registerLanguage("xml",function(){var t="[A-Za-z0-9\\._:-]+",e={b:/<\?(php)?(?!\w)/,e:/\?>/,sL:"php",subLanguageMode:"continuous"},c={eW:!0,i:/</,r:0,c:[e,{cN:"attribute",b:t,r:0},{b:"=",r:0,c:[{cN:"value",c:[e],v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s\/>]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:!0,c:[{cN:"doctype",b:"<!DOCTYPE",e:">",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"<!--",e:"-->",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"<style(?=\\s|>|$)",e:">",k:{title:"style"},c:[c],starts:{e:"</style>",rE:!0,sL:"css"}},{cN:"tag",b:"<script(?=\\s|>|$)",e:">",k:{title:"script"},c:[c],starts:{e:"</script>",rE:!0,sL:"javascript"}},e,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"</?",e:"/?>",c:[{cN:"title",b:/[^ \/><\n\t]+/,r:0},c]}]}});hljs.registerLanguage("javascript",function(r){return{aliases:["js"],k:{keyword:"in if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const class",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document"},c:[{cN:"pi",r:10,v:[{b:/^\s*('|")use strict('|")/},{b:/^\s*('|")use asm('|")/}]},r.ASM,r.QSM,r.CLCM,r.CBCM,r.CNM,{b:"("+r.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[r.CLCM,r.CBCM,r.RM,{b:/</,e:/>;/,r:0,sL:"xml"}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[r.inherit(r.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,c:[r.CLCM,r.CBCM],i:/["'\(]/}],i:/\[|%/},{b:/\$[(.]/},{b:"\\."+r.IR,r:0}]}});
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
(function() {
|
|
2
|
+
|
|
3
|
+
var QUnitRunner = function() {
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
* @type {object}
|
|
8
|
+
* @protected
|
|
9
|
+
*/
|
|
10
|
+
this._config = {
|
|
11
|
+
baseUrl: '',
|
|
12
|
+
preload: [],
|
|
13
|
+
tests: [],
|
|
14
|
+
onInit: null,
|
|
15
|
+
onEnd: null
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
this.tests = [];
|
|
19
|
+
this._hashConfig = {};
|
|
20
|
+
this._isInit = false;
|
|
21
|
+
this._doStart = false;
|
|
22
|
+
this._qUnitStart = null;
|
|
23
|
+
this._qUnitLoad = null;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
QUnitRunner.prototype = {
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
*
|
|
30
|
+
*/
|
|
31
|
+
init: function(config) {
|
|
32
|
+
config = config || {};
|
|
33
|
+
|
|
34
|
+
this._config.baseUrl = config.baseUrl || this._config.baseUrl;
|
|
35
|
+
|
|
36
|
+
var that = this;
|
|
37
|
+
// Load jQuery for render
|
|
38
|
+
that.load('qunit-runner/qunit/jquery.js', function() {
|
|
39
|
+
|
|
40
|
+
// Apply config
|
|
41
|
+
$.extend(true, that._config, config);
|
|
42
|
+
|
|
43
|
+
// Render QUnit elements
|
|
44
|
+
that._render();
|
|
45
|
+
|
|
46
|
+
// Load lib, scripts and tests
|
|
47
|
+
that.load([
|
|
48
|
+
'qunit-runner/qunit/qunit.js'
|
|
49
|
+
], function() {
|
|
50
|
+
|
|
51
|
+
QUnit.setWarning = function(/** QUnit.assert */ test) {
|
|
52
|
+
var oDivAssert = $('#qunit-test-output' + test.test.testNumber + ' li')[test.test.assertions.length - 1];
|
|
53
|
+
$(oDivAssert).addClass('warning');
|
|
54
|
+
}
|
|
55
|
+
// QUnit.stop = function(){}; // to backward compatibility
|
|
56
|
+
|
|
57
|
+
that._freezeQUnit();
|
|
58
|
+
that._preInitQUnit();
|
|
59
|
+
|
|
60
|
+
that.load([
|
|
61
|
+
'qunit-runner/qunit/qunit.css',
|
|
62
|
+
'qunit-runner/highlight/github.css',
|
|
63
|
+
'qunit-runner/highlight/highlight.js'
|
|
64
|
+
].concat(that._config.preload), function() {
|
|
65
|
+
that.load(that._config.tests, function() {
|
|
66
|
+
|
|
67
|
+
// Configure QUnit library
|
|
68
|
+
that._initQUnit();
|
|
69
|
+
|
|
70
|
+
if (that._config.onInit) {
|
|
71
|
+
that._config.onInit();
|
|
72
|
+
that._config.onInit = null;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
that._isInit = true;
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
},
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
*
|
|
84
|
+
*/
|
|
85
|
+
start: function() {
|
|
86
|
+
this._doStart = true;
|
|
87
|
+
if (!this._isInit) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
QUnit.start = this._qUnitStart;
|
|
92
|
+
QUnit.start();
|
|
93
|
+
},
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
*
|
|
97
|
+
*/
|
|
98
|
+
stop: function() {
|
|
99
|
+
this._doStart = false;
|
|
100
|
+
if (!this._isInit) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
QUnit.stop();
|
|
105
|
+
},
|
|
106
|
+
|
|
107
|
+
async: function(callback) {
|
|
108
|
+
QUnit.stop();
|
|
109
|
+
return function() {
|
|
110
|
+
QUnit.start();
|
|
111
|
+
return callback.apply(null, arguments);
|
|
112
|
+
};
|
|
113
|
+
},
|
|
114
|
+
|
|
115
|
+
test: function(testName, expected, callback, async) {
|
|
116
|
+
this.tests.push(testName);
|
|
117
|
+
QUnit.test.apply(QUnit.test, arguments);
|
|
118
|
+
},
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
*
|
|
122
|
+
* @param {string|string[]} urls
|
|
123
|
+
* @param {function} [callback]
|
|
124
|
+
*/
|
|
125
|
+
load: function(urls, callback) {
|
|
126
|
+
callback = callback || function() {};
|
|
127
|
+
|
|
128
|
+
if (typeof urls === 'string') {
|
|
129
|
+
urls = [urls];
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (urls.length === 0) {
|
|
133
|
+
callback();
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
var counter = urls.length;
|
|
138
|
+
var checkCallback = function() {
|
|
139
|
+
counter--;
|
|
140
|
+
|
|
141
|
+
if (counter === 0) {
|
|
142
|
+
callback();
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
|
|
146
|
+
for (var i = 0, l = urls.length; i < l; i++) {
|
|
147
|
+
var aMatches = /\.([0-9a-z]+)(?:[\?#]|$)/i.exec(urls[i]);
|
|
148
|
+
var fileExtension = aMatches !== null ? aMatches[1] : null;
|
|
149
|
+
var url = this._config.baseUrl + urls[i];
|
|
150
|
+
|
|
151
|
+
switch (fileExtension) {
|
|
152
|
+
case 'js':
|
|
153
|
+
this._loadScript(url, checkCallback);
|
|
154
|
+
break;
|
|
155
|
+
|
|
156
|
+
case 'css':
|
|
157
|
+
this._loadCss(url, checkCallback);
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
|
|
163
|
+
setHash: function(key, value, forceRefresh) {
|
|
164
|
+
forceRefresh = forceRefresh || false;
|
|
165
|
+
|
|
166
|
+
this._hashConfig[key] = value;
|
|
167
|
+
location.hash = this._buildUrlHash();
|
|
168
|
+
|
|
169
|
+
if (forceRefresh) {
|
|
170
|
+
window.location.reload();
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
|
|
174
|
+
getHash: function(key) {
|
|
175
|
+
return this._hashConfig.hasOwnProperty(key) ? this._hashConfig[key] : null;
|
|
176
|
+
},
|
|
177
|
+
|
|
178
|
+
_freezeQUnit: function() {
|
|
179
|
+
// Fix QUnit autostart with global failure
|
|
180
|
+
this._qUnitStart = QUnit.start;
|
|
181
|
+
QUnit.start = function() {};
|
|
182
|
+
this._qUnitLoad = QUnit.load;
|
|
183
|
+
QUnit.load = function() {};
|
|
184
|
+
},
|
|
185
|
+
|
|
186
|
+
_parseUrlHash: function() {
|
|
187
|
+
// Parse hash
|
|
188
|
+
var hash = {};
|
|
189
|
+
var hashParts = location.hash.substr(1).split('&');
|
|
190
|
+
for (var i = 0, l = hashParts.length; i < l; i++) {
|
|
191
|
+
var param = hashParts[i].split('=');
|
|
192
|
+
if (param.length === 1) {
|
|
193
|
+
param = ['url', param[0]];
|
|
194
|
+
}
|
|
195
|
+
hash[param[0]] = param[1];
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
return hash;
|
|
199
|
+
},
|
|
200
|
+
|
|
201
|
+
_buildUrlHash: function(customConfig) {
|
|
202
|
+
var config = $.extend({}, this._hashConfig, customConfig);
|
|
203
|
+
|
|
204
|
+
var params = [];
|
|
205
|
+
for (var key in config) {
|
|
206
|
+
if (config.hasOwnProperty(key)) {
|
|
207
|
+
if (key === 'url') {
|
|
208
|
+
continue;
|
|
209
|
+
}
|
|
210
|
+
if (config[key] === null) {
|
|
211
|
+
continue;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
params.push(key + '=' + config[key]);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
if (config.url) {
|
|
218
|
+
params.push(config.url);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
return params.length > 0 ? '#' + params.join('&') : '';
|
|
222
|
+
},
|
|
223
|
+
|
|
224
|
+
_preInitQUnit: function() {
|
|
225
|
+
this._hashConfig = this._parseUrlHash();
|
|
226
|
+
|
|
227
|
+
// Build url
|
|
228
|
+
var that = this;
|
|
229
|
+
QUnit.url = function(customConfig) {
|
|
230
|
+
return location.href.replace(/#.*$/, '').replace(/\?.*$/, '') + that._buildUrlHash(customConfig);
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
if (this._hashConfig.testNumber) {
|
|
234
|
+
QUnit.config.testNumber = this._hashConfig.testNumber.split(',');
|
|
235
|
+
for (var i = 0, l = QUnit.config.testNumber.length; i < l; i++) {
|
|
236
|
+
QUnit.config.testNumber[i] = parseInt(QUnit.config.testNumber[i]);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
if (this._hashConfig.module) {
|
|
240
|
+
QUnit.config.module = this._hashConfig.module;
|
|
241
|
+
}
|
|
242
|
+
if (this._hashConfig.filter) {
|
|
243
|
+
QUnit.config.filter = this._hashConfig.filter;
|
|
244
|
+
}
|
|
245
|
+
},
|
|
246
|
+
|
|
247
|
+
_initQUnit: function() {
|
|
248
|
+
QUnit.config.autostart = false;
|
|
249
|
+
QUnit.config.reorder = false;
|
|
250
|
+
QUnit.config.testTimeout = 15000; // 15 seconds, then async tests will continue
|
|
251
|
+
|
|
252
|
+
var that = this;
|
|
253
|
+
QUnit.done(function() {
|
|
254
|
+
if (that._doStart && that._config.onEnd) {
|
|
255
|
+
that._config.onEnd();
|
|
256
|
+
that._config.onEnd = null;
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
|
|
260
|
+
QUnit.load = this._qUnitLoad;
|
|
261
|
+
|
|
262
|
+
// Fix QUnit async load
|
|
263
|
+
QUnit.config.autorun = false;
|
|
264
|
+
if (document.readyState === "complete") {
|
|
265
|
+
QUnit.load();
|
|
266
|
+
QUnit.config.blocking = true;
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
|
|
270
|
+
_render: function() {
|
|
271
|
+
$('body').prepend('<div id="qunit"></div><div id="qunit-fixture"></div>');
|
|
272
|
+
},
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
*
|
|
276
|
+
* @param {string} url
|
|
277
|
+
* @param {function} [callback]
|
|
278
|
+
*/
|
|
279
|
+
_loadScript: function(url, callback) {
|
|
280
|
+
callback = callback || function() {};
|
|
281
|
+
|
|
282
|
+
var script = document.createElement('script');
|
|
283
|
+
|
|
284
|
+
script.async = false;
|
|
285
|
+
script.src = this._appendCacheSuffix(url);
|
|
286
|
+
script.onload = function () {
|
|
287
|
+
callback(); callback = function() {};
|
|
288
|
+
};
|
|
289
|
+
// For IE<9
|
|
290
|
+
script.onreadystatechange = function() {
|
|
291
|
+
if (this.readyState == "complete" || this.readyState == "loaded") {
|
|
292
|
+
setTimeout(function() {
|
|
293
|
+
callback(); callback = function() {};
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
};
|
|
297
|
+
|
|
298
|
+
document.getElementsByTagName("head")[0].appendChild(script);
|
|
299
|
+
},
|
|
300
|
+
|
|
301
|
+
/**
|
|
302
|
+
*
|
|
303
|
+
* @param {string} url
|
|
304
|
+
* @param {function} [callback]
|
|
305
|
+
*/
|
|
306
|
+
_loadCss: function(url, callback) {
|
|
307
|
+
callback = callback || function() {};
|
|
308
|
+
|
|
309
|
+
var link = document.createElement('link');
|
|
310
|
+
link.rel = 'stylesheet';
|
|
311
|
+
link.type = 'text/css';
|
|
312
|
+
link.href = this._appendCacheSuffix(url);
|
|
313
|
+
document.getElementsByTagName("head")[0].appendChild(link);
|
|
314
|
+
|
|
315
|
+
var sheet = 'sheet' in link ? 'sheet' : 'styleSheet';
|
|
316
|
+
var cssRules = 'sheet' in link ? 'cssRules' : 'rules';
|
|
317
|
+
|
|
318
|
+
var timeLeft = 10000; // 10 sec
|
|
319
|
+
var timer = setInterval(function() {
|
|
320
|
+
if ( link && link[sheet] ) { // success
|
|
321
|
+
clearInterval( timer );
|
|
322
|
+
callback();
|
|
323
|
+
} else {
|
|
324
|
+
timeLeft -= 10;
|
|
325
|
+
if ( timeLeft < 0 ) {
|
|
326
|
+
clearInterval( timer );
|
|
327
|
+
callback();
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
}, 10);
|
|
331
|
+
},
|
|
332
|
+
|
|
333
|
+
_appendCacheSuffix: function(url) {
|
|
334
|
+
return url + (url.indexOf('?') === -1 ? '?' : '&') + 't=' + (new Date()).getTime();
|
|
335
|
+
}
|
|
336
|
+
};
|
|
337
|
+
|
|
338
|
+
window.QUnitRunner = new QUnitRunner();
|
|
339
|
+
|
|
340
|
+
})();
|