diff --git a/openvidu-browser/.gitignore b/openvidu-browser/.gitignore index 16932162..00cbbdf5 100644 --- a/openvidu-browser/.gitignore +++ b/openvidu-browser/.gitignore @@ -1,4 +1,59 @@ -/node_modules/ -/yarn.lock -/npm-debug.log -/lib/ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (http://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Typescript v1 declaration files +typings/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env + diff --git a/openvidu-browser/LICENSE b/openvidu-browser/LICENSE new file mode 100644 index 00000000..261eeb9e --- /dev/null +++ b/openvidu-browser/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/openvidu-browser/config/tslint.json b/openvidu-browser/config/tslint.json new file mode 100644 index 00000000..2f1e9bc7 --- /dev/null +++ b/openvidu-browser/config/tslint.json @@ -0,0 +1,154 @@ +{ + "extends": "tslint:recommended", + "rules": { + "array-type": [ + true, + "array" + ], + "ban-types": { + "options": [ + [ + "Object", + "Avoid using the `Object` type. Did you mean `object`?" + ], + [ + "Function", + "Avoid using the `Function` type. Prefer a specific function type, like `() => void`, or use `ts.AnyFunction`." + ], + [ + "Boolean", + "Avoid using the `Boolean` type. Did you mean `boolean`?" + ], + [ + "Number", + "Avoid using the `Number` type. Did you mean `number`?" + ], + [ + "String", + "Avoid using the `String` type. Did you mean `string`?" + ] + ] + }, + "class-name": true, + "comment-format": [ + true, + "check-space" + ], + "curly": [ + true, + "ignore-same-line" + ], + "indent": [ + true, + "spaces", + 4 + ], + "interface-name": [ + true, + "never-prefix" + ], + "interface-over-type-literal": true, + "jsdoc-format": true, + "no-inferrable-types": true, + "no-internal-module": true, + "no-null-keyword": false, + "no-switch-case-fall-through": true, + "no-trailing-whitespace": [ + true, + "ignore-template-strings" + ], + "no-var-keyword": true, + "object-literal-shorthand": true, + "one-line": [ + true, + "check-open-brace", + "check-whitespace" + ], + "prefer-const": true, + "quotemark": [ + true, + "single", + "avoid-escape", + "avoid-template" + ], + "semicolon": [ + true, + "always", + "ignore-bound-class-methods" + ], + "space-within-parens": true, + "triple-equals": true, + "typedef-whitespace": [ + true, + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + }, + { + "call-signature": "onespace", + "index-signature": "onespace", + "parameter": "onespace", + "property-declaration": "onespace", + "variable-declaration": "onespace" + } + ], + "whitespace": [ + true, + "check-branch", + "check-decl", + "check-operator", + "check-module", + "check-separator", + "check-type" + ], + "no-implicit-dependencies": [ + true, + "dev" + ], + "object-literal-key-quotes": [ + true, + "consistent-as-needed" + ], + "variable-name": [ + true, + "ban-keywords", + "check-format", + "allow-leading-underscore" + ], + "arrow-parens": false, + "arrow-return-shorthand": false, + "forin": false, + "member-access": false, + "no-conditional-assignment": false, + "no-console": false, + "no-debugger": false, + "no-empty-interface": false, + "no-eval": false, + "no-object-literal-type-assertion": false, + "no-shadowed-variable": false, + "no-submodule-imports": false, + "no-var-requires": false, + "ordered-imports": false, + "prefer-conditional-expression": false, + "radix": false, + "trailing-comma": false, + "align": false, + "eofline": false, + "max-line-length": false, + "no-consecutive-blank-lines": false, + "space-before-function-paren": false, + "ban-comma-operator": false, + "max-classes-per-file": false, + "member-ordering": false, + "no-angle-bracket-type-assertion": false, + "no-bitwise": false, + "no-namespace": false, + "no-reference": false, + "object-literal-sort-keys": false, + "one-variable-per-declaration": false, + "unified-signatures": false + } +} \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/_constants.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/_constants.sass new file mode 100644 index 00000000..bb97b3f8 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/_constants.sass @@ -0,0 +1,39 @@ +// Fonts +// +$FONT_FAMILY: 'Segoe UI', sans-serif +$FONT_FAMILY_MONO: Menlo, Monaco, Consolas, 'Courier New', monospace + +$FONT_SIZE: 16px +$FONT_SIZE_MONO: 14px + +$LINE_HEIGHT: 1.333em + + +// Colors +// +$COLOR_BACKGROUND: #fdfdfd +$COLOR_TEXT: #222 +$COLOR_TEXT_ASIDE: #808080 +$COLOR_LINK: #4da6ff + +$COLOR_MENU_DIVIDER: #eee +$COLOR_MENU_DIVIDER_FOCUS: #000 +$COLOR_MENU_LABEL: #808080 + +$COLOR_PANEL: #fff +$COLOR_PANEL_DIVIDER: #eee + +$COLOR_COMMENT_TAG: #808080 +$COLOR_COMMENT_TAG_TEXT: #fff + +$COLOR_CODE_BACKGROUND: rgba(#000, 0.04) + +$COLOR_TS: #9600ff +$COLOR_TS_INTERFACE: #7da01f +$COLOR_TS_ENUM: #cc9900 +$COLOR_TS_CLASS: #4da6ff +$COLOR_TS_PRIVATE: #808080 + +$TOOLBAR_COLOR: #fff +$TOOLBAR_TEXT_COLOR: #333 +$TOOLBAR_HEIGHT: 40px \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_comment.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_comment.sass new file mode 100644 index 00000000..2c40e61c --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_comment.sass @@ -0,0 +1,53 @@ +// Displays all regular comment tags +// +//
+//
see
+//

Dispatcher.EVENT_BEGIN

+//
see
+//

Dispatcher.EVENT_BEGIN_RESOLVE

+//
see
+//

Dispatcher.EVENT_END_RESOLVE

+//
+// +dl.tsd-comment-tags + overflow: hidden + + dt + float: left + padding: 1px 5px + margin: 0 10px 0 0 + border-radius: 4px + border: 1px solid $COLOR_COMMENT_TAG + color: $COLOR_COMMENT_TAG + font-size: 0.8em + font-weight: normal + + dd + margin: 0 0 10px 0 + + &:before, &:after + display: table + content: " " + pre, &:after + clear: both + + p + margin: 0 + + +// Special formatting for the main reflection on each page. +// +//
+//
+//

The default TypeDoc main application class.

+//

This class holds the two main components of TypeDoc, the Dispatcher and the Renderer.

+//
+//
+// +.tsd-panel.tsd-comment .lead + font-size: 1.1em + line-height: $LINE_HEIGHT + margin-bottom: 2em + + &:last-child + margin-bottom: 0 \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_filter.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_filter.sass new file mode 100644 index 00000000..12541540 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_filter.sass @@ -0,0 +1,65 @@ +// Classes set on the body to control the visible state of the filtered elements +// +.toggle-protected .tsd-is-private + display: none + +.toggle-public .tsd-is-private, +.toggle-public .tsd-is-protected, +.toggle-public .tsd-is-private-protected + display: none + +.toggle-inherited .tsd-is-inherited + display: none + +.toggle-only-exported .tsd-is-not-exported + display: none + +.toggle-externals .tsd-is-external + display: none + + +// Filter Buttons in the toolbar +// +#tsd-filter + position: relative + display: inline-block + height: $TOOLBAR_HEIGHT + vertical-align: bottom + + .no-filter & + display: none + + .tsd-filter-group + display: inline-block + height: $TOOLBAR_HEIGHT + vertical-align: bottom + white-space: nowrap + + input + display: none + + +size-xs-sm + .tsd-filter-group + display: block + position: absolute + top: $TOOLBAR_HEIGHT + right: 20px + height: auto + background-color: $COLOR_PANEL + visibility: hidden + transform: translate(50%,0) + box-shadow: 0 0 4px rgba(#000, 0.25) + + .has-options & + visibility: visible + + .to-has-options & + animation: fade-in 0.2s + + .from-has-options & + animation: fade-out 0.2s + + label, + .tsd-select + display: block + padding-right: 20px \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_footer.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_footer.sass new file mode 100644 index 00000000..9dd5925e --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_footer.sass @@ -0,0 +1,21 @@ +footer + border-top: 1px solid $COLOR_PANEL_DIVIDER + background-color: $COLOR_PANEL + + &.with-border-bottom + border-bottom: 1px solid $COLOR_PANEL_DIVIDER + + .tsd-legend-group + font-size: 0 + + .tsd-legend + display: inline-block + width: 25% + padding: 0 + font-size: $FONT_SIZE + list-style: none + line-height: $LINE_HEIGHT + vertical-align: top + + +size-xs-sm + width: 50% \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_hierarchy.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_hierarchy.sass new file mode 100644 index 00000000..891b52bb --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_hierarchy.sass @@ -0,0 +1,24 @@ +// Displays the type hierarchy +// +// +// +.tsd-hierarchy + list-style: square + padding: 0 0 0 20px + margin: 0 + + .target + font-weight: bold diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_images.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_images.sass new file mode 100644 index 00000000..1fa3f017 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_images.sass @@ -0,0 +1,3 @@ +// fixes issue with images in readme +img + max-width: 100% diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_index.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_index.sass new file mode 100644 index 00000000..bc259fdd --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_index.sass @@ -0,0 +1,80 @@ +// Displays an index of grouped links. +// +//
+//
+//
+//

Constructor methods

+// +//
+// +//
+//
+// +.tsd-index-panel + .tsd-index-content + margin-bottom: -30px !important + + .tsd-index-section + margin-bottom: 30px !important + + h3 + @extend h4 + margin: 0 -20px 10px -20px + padding: 0 20px 10px 20px + border-bottom: 1px solid $COLOR_PANEL_DIVIDER + + ul.tsd-index-list + +vendors(column-count, 3) + +vendors(column-gap, 20px) + padding: 0 + list-style: none + line-height: $LINE_HEIGHT + + +size-xs-sm + +vendors(column-count, 1) + + +size-md + +vendors(column-count, 2) + + li + +vendors(column-break-inside, avoid) + +vendors(page-break-inside, avoid) + + a, + .tsd-parent-kind-module a + color: $COLOR_TS + + .tsd-parent-kind-interface a + color: $COLOR_TS_INTERFACE + + .tsd-parent-kind-enum a + color: $COLOR_TS_ENUM + + .tsd-parent-kind-class a + color: $COLOR_TS_CLASS + + + .tsd-kind-module a + color: $COLOR_TS + + .tsd-kind-interface a + color: $COLOR_TS_INTERFACE + + .tsd-kind-enum a + color: $COLOR_TS_ENUM + + .tsd-kind-class a + color: $COLOR_TS_CLASS + + .tsd-is-private a + color: $COLOR_TS_PRIVATE \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_member.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_member.sass new file mode 100644 index 00000000..f3518336 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_member.sass @@ -0,0 +1,21 @@ +.tsd-flag + display: inline-block + padding: 1px 5px + border-radius: 4px + color: $COLOR_COMMENT_TAG_TEXT + background-color: $COLOR_COMMENT_TAG + text-indent: 0 + font-size: $FONT_SIZE_MONO + font-weight: normal + +.tsd-anchor + position: absolute + top: -100px + +.tsd-member + position: relative + + .tsd-anchor + h3 + margin-top: 0 + margin-bottom: 0 + border-bottom: none diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_navigation.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_navigation.sass new file mode 100644 index 00000000..2b503b03 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_navigation.sass @@ -0,0 +1,162 @@ +// Base format for the navigation parts. +// +=INDENT($DEPTH, $BASE, $STEP, $PROGRESS:$DEPTH) + @if $PROGRESS > 0 + & li + +INDENT($DEPTH, $BASE, $STEP, $PROGRESS - 1) + @else + & a + padding-left: #{($BASE + $STEP * ($DEPTH - 1))}px + +=INDENTS($COUNT, $BASE, $STEP) + @for $DEPTH from 1 through $COUNT + +INDENT($DEPTH, $BASE, $STEP) + +.tsd-navigation + padding: 0 0 0 40px + + a + display: block + padding-top: 2px + padding-bottom: 2px + border-left: 2px solid transparent + color: $COLOR_TEXT + text-decoration: none + transition: border-left-color 0.1s + + &:hover + text-decoration: underline + + ul + margin: 0 + padding: 0 + list-style: none + + li + padding: 0 + + +// Primary part of the navigation containing the available modules. +// +// +// +.tsd-navigation.primary + padding-bottom: 40px + + a + display: block + padding-top: 6px + padding-bottom: 6px + + ul + +INDENTS(6, 5, 20) + + > ul + border-bottom: 1px solid $COLOR_PANEL_DIVIDER + + li + border-top: 1px solid $COLOR_PANEL_DIVIDER + + &.current > a + font-weight: bold + + &.label span + display: block + padding: 20px 0 6px 5px + color: $COLOR_MENU_LABEL + + &.globals + li > span, + &.globals + li > a + padding-top: 20px + + +// Secondary part of the navigation containing the table of contents +// of the current module. +// Can be made sticky by `typedoc.MenuSticky` and will highlight current sticky with `typedoc.MenuHighlight`. +// +// +// +.tsd-navigation.secondary + ul + +INDENTS(6, 25, 20) + transition: opacity 0.2s + + &.current a + border-left-color: $COLOR_PANEL_DIVIDER + + li.focus > a, + ul.current li.focus > a + border-left-color: $COLOR_MENU_DIVIDER_FOCUS + + li.current + margin-top: 20px + margin-bottom: 20px + border-left-color: $COLOR_PANEL_DIVIDER + + > a + font-weight: bold + + +// Sticky menu setup +// +.menu-sticky-wrap + +size-md-lg + position: static + + .no-csspositionsticky & + &.sticky + position: fixed + + &.sticky-current + position: fixed + + ul.before-current, + ul.after-current + opacity: 0 + + &.sticky-bottom + position: absolute + top: auto !important + left: auto !important + bottom: 0 + right: 0 + + .csspositionsticky & + &.sticky + position: sticky + + &.sticky-current + position: sticky \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_panel.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_panel.sass new file mode 100644 index 00000000..82ae3d51 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_panel.sass @@ -0,0 +1,70 @@ +// Displays a panel, an organisation unit in TypeDoc used to group single entities +// like a method or a variable. +// +//
+//

Eirmod tempor invidunt

+//

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

+//
+// +.tsd-panel + @extend %prevent-children-margin + margin: 20px 0 + padding: 20px + background-color: $COLOR_PANEL + box-shadow: 0 0 4px rgba(#000, 0.25) + + &:empty + display: none + + > h1, > h2, > h3 + margin: 1.5em -20px 10px -20px + padding: 0 20px 10px 20px + border-bottom: 1px solid $COLOR_PANEL_DIVIDER + + &.tsd-before-signature + margin-bottom: 0 + border-bottom: 0 + + table + display: block + width: 100% + overflow: auto + margin-top: 10px + word-break: normal + word-break: keep-all + + th + font-weight: bold + + th, td + padding: 6px 13px + border: 1px solid #ddd + + tr + background-color: #fff + border-top: 1px solid #ccc + + &:nth-child(2n) + background-color: #f8f8f8 + + +// Holds a series of panels with an optional heading. +// +//
+//

Consetetur sadipscing elitr

+//
+//

Eirmod tempor invidunt

+//

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

+//
+//
+//

Eirmod tempor invidunt

+//

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.

+//
+//
+// +.tsd-panel-group + margin: 60px 0 + + > h1, > h2, > h3 + padding-left: 20px + padding-right: 20px \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_search.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_search.sass new file mode 100644 index 00000000..be33a9f9 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_search.sass @@ -0,0 +1,89 @@ +#tsd-search + transition: background-color 0.2s + + .title + position: relative + z-index: 2 + + .field + position: absolute + left: 0 + top: 0 + right: 40px + height: 40px + + input + box-sizing: border-box + position: relative + top: -50px + z-index: 1 + width: 100% + padding: 0 10px + opacity: 0 + outline: 0 + border: 0 + background: transparent + color: $COLOR_TEXT + + label + position: absolute + overflow: hidden + right: -40px + + .field input, + .title + transition: opacity 0.2s + + .results + position: absolute + visibility: hidden + top: 40px + width: 100% + margin: 0 + padding: 0 + list-style: none + box-shadow: 0 0 4px rgba(#000, 0.25) + + li + padding: 0 10px + background-color: $COLOR_BACKGROUND + + li:nth-child(even) + background-color: $COLOR_PANEL + + li.state + display: none + + li.current, + li:hover + background-color: $COLOR_PANEL_DIVIDER + + a + display: block + + &:before + top: 10px + + span.parent + color: $COLOR_TEXT_ASIDE + font-weight: normal + + &.has-focus + background-color: $COLOR_PANEL_DIVIDER + + .field input + top: 0 + opacity: 1 + + .title + z-index: 0 + opacity: 0 + + .results + visibility: visible + + &.loading .results li.state.loading + display: block + + &.failure .results li.state.failure + display: block diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_signatures.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_signatures.sass new file mode 100644 index 00000000..acd4cbe9 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_signatures.sass @@ -0,0 +1,152 @@ +// Wraps a function signature. +// Changes its appearance when directly placed inside a `tsd-panel`. +// Can be combined with class `tsd-kind-icon` to display an icon in front of the signature. +// +//
+//
+// getChildByName( +// name: string +// ): +// DeclarationReflection +//
+//
+// +.tsd-signature + margin: 0 0 1em 0 + padding: 10px + border: 1px solid $COLOR_PANEL_DIVIDER + font-family: $FONT_FAMILY_MONO + font-size: $FONT_SIZE_MONO + + &.tsd-kind-icon + padding-left: 30px + + &:before + top: 10px + left: 10px + + .tsd-panel > & + margin-left: -20px + margin-right: -20px + border-width: 1px 0 + + &.tsd-kind-icon + padding-left: 40px + + &:before + left: 20px + +.tsd-signature-symbol + color: $COLOR_TEXT_ASIDE + font-weight: normal + +.tsd-signature-type + font-style: italic + font-weight: normal + + +// Displays a list of signatures. +// Changes its appearance when directly placed inside a `tsd-panel`. +// Made interactive by JavaScript at `typedoc.Signature`. +// +// +// +.tsd-signatures + padding: 0 + margin: 0 0 1em 0 + border: 1px solid $COLOR_PANEL_DIVIDER + + .tsd-signature + margin: 0 + border-width: 1px 0 0 0 + transition: background-color 0.1s + + &:first-child + border-top-width: 0 + + &.current + background-color: $COLOR_PANEL_DIVIDER + + &.active > .tsd-signature + cursor: pointer + + .tsd-panel > & + margin-left: -20px + margin-right: -20px + border-width: 1px 0 + + .tsd-signature.tsd-kind-icon + padding-left: 40px + + &:before + left: 20px + + .tsd-panel > a.anchor + & + border-top-width: 0 + margin-top: -20px + + +// Holds the descriptions related to a list of signatures. +// Made interactive by JavaScript at `typedoc.Signature`. +// +// +// +ul.tsd-descriptions + position: relative + overflow: hidden + transition: height 0.3s + padding: 0 + list-style: none + + > li + @extend %prevent-children-margin + + &.active > .tsd-description + display: none + + &.current + display: block + + &.fade-in + animation: fade-in-delayed 0.3s + + &.fade-out + animation: fade-out-delayed 0.3s + position: absolute + display: block + top: 0 + left: 0 + right: 0 + opacity: 0 + visibility: hidden + + h4 + font-size: $FONT_SIZE + margin: 1em 0 0.5em 0 + +ul.tsd-parameters, +ul.tsd-type-parameters + list-style: square + margin: 0 + padding-left: 20px + + > li.tsd-parameter-siganture + list-style: none + margin-left: -20px + + h5 + font-size: $FONT_SIZE + margin: 1em 0 0.5em 0 + + .tsd-comment + margin-top: -0.5em \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_sources.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_sources.sass new file mode 100644 index 00000000..91319389 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_sources.sass @@ -0,0 +1,24 @@ +// Displays the source and inheritance information +// +// +// +.tsd-sources + font-size: $FONT_SIZE_MONO + color: $COLOR_TEXT_ASIDE + margin: 0 0 1em 0 + + a + color: $COLOR_TEXT_ASIDE + text-decoration: underline + + ul, p + margin: 0 !important + + ul + list-style: none + padding: 0 \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_toolbar.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_toolbar.sass new file mode 100644 index 00000000..03863f72 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/elements/_toolbar.sass @@ -0,0 +1,171 @@ +// Displays the toolbar at the top of the page. +// +//
+//
+//
+// +//
+//
+//
+// +.tsd-page-toolbar + position: absolute + z-index: 1 + top: 0 + left: 0 + width: 100% + height: $TOOLBAR_HEIGHT + color: $TOOLBAR_TEXT_COLOR + background: $TOOLBAR_COLOR + border-bottom: 1px solid $COLOR_PANEL_DIVIDER + + a + color: $TOOLBAR_TEXT_COLOR + text-decoration: none + + &.title + font-weight: bold + + &.title:hover + text-decoration: underline + + .table-wrap + display: table + width: 100% + height: $TOOLBAR_HEIGHT + + .table-cell + display: table-cell + position: relative + white-space: nowrap + line-height: $TOOLBAR_HEIGHT + + &:first-child + width: 100% + +%TSD_WIDGET_ICON + &:before + content: '' + display: inline-block + width: 40px + height: 40px + margin: 0 -8px 0 0 + background-image: url(../images/widgets.png) + background-repeat: no-repeat + text-indent: -1024px + vertical-align: bottom + + +retina + background-image: url(../images/widgets@2x.png) + background-size: 320px 40px + +.tsd-widget + @extend %TSD_WIDGET_ICON + display: inline-block + overflow: hidden + opacity: 0.6 + height: $TOOLBAR_HEIGHT + transition: opacity 0.1s, background-color 0.2s + vertical-align: bottom + cursor: pointer + + &:hover + opacity: 0.8 + + &.active + opacity: 1 + background-color: $COLOR_PANEL_DIVIDER + + &.no-caption + width: 40px + + &:before + margin: 0 + + &.search:before + background-position: 0 0 + + &.menu:before + background-position: -40px 0 + + &.options:before + background-position: -80px 0 + + &.options, + &.menu + display: none + + +size-xs-sm + display: inline-block + + input[type=checkbox] + &:before + background-position: -120px 0 + + input[type=checkbox]:checked + &:before + background-position: -160px 0 + +.tsd-select + position: relative + display: inline-block + height: $TOOLBAR_HEIGHT + transition: opacity 0.1s, background-color 0.2s + vertical-align: bottom + cursor: pointer + + .tsd-select-label + @extend %TSD_WIDGET_ICON + opacity: 0.6 + transition: opacity 0.2s + + &:before + background-position: -240px 0 + + &.active + .tsd-select-label + opacity: 0.8 + + .tsd-select-list + visibility: visible + opacity: 1 + transition-delay: 0s + + .tsd-select-list + position: absolute + visibility: hidden + top: $TOOLBAR_HEIGHT + left: 0 + margin: 0 + padding: 0 + opacity: 0 + list-style: none + box-shadow: 0 0 4px rgba(#000, 0.25) + transition: visibility 0s 0.2s, opacity 0.2s + + li + @extend %TSD_WIDGET_ICON + padding: 0 20px 0 0 + background-color: $COLOR_BACKGROUND + + &:before + background-position: 40px 0 + + &:nth-child(even) + background-color: $COLOR_PANEL + + &:hover + background-color: $COLOR_PANEL_DIVIDER + + &.selected:before + background-position: -200px 0 + + +size-xs-sm + .tsd-select-list + top: 0 + left: auto + right: 100% + margin-right: -5px + + .tsd-select-label:before + background-position: -280px 0 \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/layouts/_default.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/layouts/_default.sass new file mode 100644 index 00000000..b8d6b3c3 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/layouts/_default.sass @@ -0,0 +1,114 @@ +html.default + +size-md + .col-content + width: 72% + + .col-menu + width: 28% + + .tsd-navigation + padding-left: 10px + + +size-xs-sm + .col-content + float: none + width: 100% + + .col-menu + position: fixed !important + overflow: auto + -webkit-overflow-scrolling: touch + overflow-scrolling: touch + z-index: 1024 + top: 0 !important + bottom: 0 !important + left: auto !important + right: 0 !important + width: 100% + padding: 20px 20px 0 0 + max-width: 450px + visibility: hidden + background-color: $COLOR_PANEL + transform: translate(100%,0) + + > *:last-child + padding-bottom: 20px + + .overlay + content: '' + display: block + position: fixed + z-index: 1023 + top: 0 + left: 0 + right: 0 + bottom: 0 + background-color: rgba(#000, 0.75) + visibility: hidden + + &.to-has-menu + .overlay + animation: fade-in 0.4s + + header, + footer, + .col-content + animation: shift-to-left 0.4s + + .col-menu + animation: pop-in-from-right 0.4s + + &.from-has-menu + .overlay + animation: fade-out 0.4s + + header, + footer, + .col-content + animation: unshift-to-left 0.4s + + .col-menu + animation: pop-out-to-right 0.4s + + &.has-menu + body + overflow: hidden + + .overlay + visibility: visible + + header, + footer, + .col-content + transform: translate(-25%, 0) + + .col-menu + visibility: visible + transform: translate(0,0) + +.tsd-page-title + padding: 70px 0 20px 0 + margin: 0 0 40px 0 + background: $COLOR_PANEL + box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15) + + h1 + margin: 0 + +.tsd-breadcrumb + margin: 0 + padding: 0 + color: $COLOR_TEXT_ASIDE + + a + color: $COLOR_TEXT_ASIDE + text-decoration: none + + &:hover + text-decoration: underline + + li + display: inline + + &:after + content: ' / ' diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/layouts/_minimal.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/layouts/_minimal.sass new file mode 100644 index 00000000..278677b8 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/layouts/_minimal.sass @@ -0,0 +1,50 @@ +html.minimal + .container + margin: 0 + + .container-main + padding-top: 50px + padding-bottom: 0 + + .content-wrap + padding-left: 300px + + .tsd-navigation + position: fixed !important + overflow: auto + -webkit-overflow-scrolling: touch + overflow-scrolling: touch + box-sizing: border-box + z-index: 1 + left: 0 + top: 40px + bottom: 0 + width: 300px + padding: 20px + margin: 0 + + .tsd-member .tsd-member + margin-left: 0 + + .tsd-page-toolbar + position: fixed + z-index: 2 + + #tsd-filter .tsd-filter-group + right: 0 + transform: none + + footer + background-color: transparent + + .container + padding: 0 + + .tsd-generator + padding: 0 + + +size-xs-sm + .tsd-navigation + display: none + .content-wrap + padding-left: 0 diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/main.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/main.sass new file mode 100644 index 00000000..8fcf3352 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/main.sass @@ -0,0 +1,27 @@ +@import constants + +@import vendors/normalize +@import vendors/highlight.js + +@import setup/mixins +@import setup/grid +@import setup/icons +@import setup/animations +@import setup/typography + +@import layouts/default +@import layouts/minimal + +@import elements/comment +@import elements/filter +@import elements/footer +@import elements/hierarchy +@import elements/index +@import elements/member +@import elements/navigation +@import elements/panel +@import elements/search +@import elements/signatures +@import elements/sources +@import elements/toolbar +@import elements/images diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_animations.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_animations.sass new file mode 100644 index 00000000..0b8b2ebb --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_animations.sass @@ -0,0 +1,57 @@ +.no-transition + transition: none !important + +@keyframes fade-in + from + opacity: 0 + to + opacity: 1 + +@keyframes fade-out + from + opacity: 1 + visibility: visible + to + opacity: 0 + +@keyframes fade-in-delayed + 0% + opacity: 0 + 33% + opacity: 0 + 100% + opacity: 1 + +@keyframes fade-out-delayed + 0% + opacity: 1 + visibility: visible + 66% + opacity: 0 + 100% + opacity: 0 + +@keyframes shift-to-left + from + transform: translate(0,0) + to + transform: translate(-25%,0) + +@keyframes unshift-to-left + from + transform: translate(-25%,0) + to + transform: translate(0,0) + +@keyframes pop-in-from-right + from + transform: translate(100%,0) + to + transform: translate(0,0) + +@keyframes pop-out-to-right + from + transform: translate(0,0) + visibility: visible + to + transform: translate(100%,0) \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_grid.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_grid.sass new file mode 100644 index 00000000..50de7fd2 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_grid.sass @@ -0,0 +1,59 @@ +=size-xs + @media (max-width: 640px) + & + @content + +=size-sm + @media (min-width: 641px) and (max-width: 900px) + & + @content + +=size-md + @media (min-width: 901px) and (max-width: 1024px) + & + @content + +=size-lg + @media (min-width: 1025px) + & + @content + +=size-xs-sm + @media (max-width: 900px) + & + @content + +=size-md-lg + @media (min-width: 901px) + & + @content + +.container + max-width: 1200px + margin: 0 auto + padding: 0 40px + + +size-xs + padding: 0 20px + +.container-main + padding-bottom: 200px + +.row + +clearfix + position: relative + margin: 0 -10px + +.col + @extend %prevent-children-margin + box-sizing: border-box + float: left + padding: 0 10px + +@for $width from 1 to 12 + .col-#{$width} + @extend .col + width: $width / 12 * 100% + + .offset-#{$width} + margin-left: $width / 12 * 100% \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_icons.scss b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_icons.scss new file mode 100644 index 00000000..fb5cb632 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_icons.scss @@ -0,0 +1,166 @@ +$type-icons: + (object-literal), + (class), + ('class.tsd-has-type-parameter'), + (interface), + ('interface.tsd-has-type-parameter'), + (module, external-module), + (enum), + (enum-member), + (signature), + (type-alias), + ('type-alias.tsd-has-type-parameter'); + +$member-icons: + (variable, property), + (get-signature), + (set-signature), + (accessor), + (function, method, call-signature), + ('function.tsd-has-type-parameter', 'method.tsd-has-type-parameter'), + (constructor, constructor-signature), + (index-signature), + (event), + (property), + (function, method, call-signature), + (event); + +// parameter +// type-literal +// type-parameter + +.tsd-kind-icon { + display: block; + position: relative; + padding-left: 20px; + text-indent: -20px; + + &:before { + content: ''; + display: inline-block; + vertical-align: middle; + width: 17px; + height: 17px; + margin: 0 3px 2px 0; + background-image: url(../images/icons.png); + + @include retina { + background-image: url(../images/icons@2x.png); + background-size: 238px 204px; + } + } +} + +.tsd-signature.tsd-kind-icon:before { + background-position: 0 -153px; +} + +$icon-size: 17px; +$type: -0 * $icon-size; +$type-protected: -1 * $icon-size; +$type-private: -2 * $icon-size; +$member-class-public: -3 * $icon-size; +$member-class-public-inherited: -4 * $icon-size; +$member-class-protected: -5 * $icon-size; +$member-class-protected-inherited: -6 * $icon-size; +$member-private: -7 * $icon-size; +$member: -8 * $icon-size; +$member-protected: -9 * $icon-size; +$member-enum: -10 * $icon-size; +$member-enum-protected: -11 * $icon-size; +$member-interface: -12 * $icon-size; +$member-interface-inherited: -13 * $icon-size; + + +@for $index from 1 through length($type-icons) { + @each $kind in nth($type-icons, $index) { + $selector: '.tsd-kind-' + $kind; + $offset: -#{17 * ($index)}px; + + #{$selector} { + > .tsd-kind-icon:before { + background-position: $type $offset; + } + + &.tsd-is-protected > .tsd-kind-icon:before { + background-position: $type-protected $offset; + } + + &.tsd-is-private > .tsd-kind-icon:before { + background-position: $type-private $offset; + } + } + } +} + +@for $index from 1 through length($member-icons) { + @each $kind in nth($member-icons, $index) { + $offset: -#{17 * ($index - 1)}px; + $selector: '.tsd-kind-' + $kind; + @if $index == 10 { + $selector: '.tsd-is-static'; + } @else if $index > 10 { + $selector: '.tsd-is-static.tsd-kind-' + $kind; + } + + #{$selector} { + > .tsd-kind-icon:before { + background-position: $member $offset; + } + + &.tsd-is-protected > .tsd-kind-icon:before { + background-position: $member-protected $offset; + } + + &.tsd-is-private > .tsd-kind-icon:before { + background-position: $member-private $offset; + } + + &.tsd-parent-kind-class { + > .tsd-kind-icon:before { + background-position: $member-class-public $offset; + } + + &.tsd-is-inherited > .tsd-kind-icon:before { + background-position: $member-class-public-inherited $offset; + } + + &.tsd-is-protected > .tsd-kind-icon:before { + background-position: $member-class-protected $offset; + } + + &.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { + background-position: $member-class-protected-inherited $offset; + } + + &.tsd-is-private > .tsd-kind-icon:before { + background-position: $member-private $offset; + } + } + + &.tsd-parent-kind-enum { + > .tsd-kind-icon:before { + background-position: $member-enum $offset; + } + + &.tsd-is-protected > .tsd-kind-icon:before { + background-position: $member-enum-protected $offset; + } + + &.tsd-is-private > .tsd-kind-icon:before { + background-position: $member-private $offset; + } + } + + &.tsd-parent-kind-interface { + > .tsd-kind-icon:before { + background-position: $member-interface $offset; + } + + &.tsd-is-inherited > .tsd-kind-icon:before { + background-position: $member-interface-inherited $offset; + } + } + } + } +} \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_mixins.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_mixins.sass new file mode 100644 index 00000000..451aba23 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_mixins.sass @@ -0,0 +1,30 @@ +@mixin vendors($property, $value...) + -webkit-#{$property}: $value + -moz-#{$property}: $value + -ms-#{$property}: $value + -o-#{$property}: $value + #{$property}: $value + +@mixin clearfix + &:after + visibility: hidden + display: block + content: "" + clear: both + height: 0 + +@mixin retina + @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) + & + @content + +%prevent-children-margin + > :first-child, + > :first-child > :first-child, + > :first-child > :first-child > :first-child + margin-top: 0 + + > :last-child, + > :last-child > :last-child, + > :last-child > :last-child > :last-child + margin-bottom: 0 diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_typography.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_typography.sass new file mode 100644 index 00000000..c05225d7 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/setup/_typography.sass @@ -0,0 +1,45 @@ +body + background: $COLOR_BACKGROUND + font-family: $FONT_FAMILY + font-size: $FONT_SIZE + color: $COLOR_TEXT + +a + color: $COLOR_LINK + text-decoration: none + + &:hover + text-decoration: underline + +code, pre + font-family: $FONT_FAMILY_MONO + padding: 0.2em + margin: 0 + font-size: $FONT_SIZE_MONO + background-color: $COLOR_CODE_BACKGROUND + +pre + padding: 10px + + code + padding: 0 + font-size: 100% + background-color: transparent + +.tsd-typography + line-height: $LINE_HEIGHT + + ul + list-style: square + padding: 0 0 0 20px + margin: 0 + + h4, h5, h6 + font-size: 1em + margin: 0 + + h5, h6 + font-weight: normal + + p, ul, ol + margin: 1em 0 \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/vendors/_highlight.js.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/vendors/_highlight.js.sass new file mode 100644 index 00000000..d093f7a5 --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/vendors/_highlight.js.sass @@ -0,0 +1,50 @@ +/* + * + *Visual Studio-like style based on original C# coloring by Jason Diamond + +.hljs + display: inline-block + padding: 0.5em + background: white + color: black + +.hljs-comment, .hljs-annotation, .hljs-template_comment, .diff .hljs-header, .hljs-chunk, .apache .hljs-cbracket + color: #008000 + +.hljs-keyword, .hljs-id, .hljs-built_in, .css .smalltalk .hljs-class, .hljs-winutils, .bash .hljs-variable, .tex .hljs-command, .hljs-request, .hljs-status, .nginx .hljs-title + color: #00f + +.xml .hljs-tag + color: #00f + .hljs-value + color: #00f + +.hljs-string, .hljs-title, .hljs-parent, .hljs-tag .hljs-value, .hljs-rules .hljs-value + color: #a31515 + +.ruby .hljs-symbol + color: #a31515 + .hljs-string + color: #a31515 + +.hljs-template_tag, .django .hljs-variable, .hljs-addition, .hljs-flow, .hljs-stream, .apache .hljs-tag, .hljs-date, .tex .hljs-formula, .coffeescript .hljs-attribute + color: #a31515 + +.ruby .hljs-string, .hljs-decorator, .hljs-filter .hljs-argument, .hljs-localvars, .hljs-array, .hljs-attr_selector, .hljs-pseudo, .hljs-pi, .hljs-doctype, .hljs-deletion, .hljs-envvar, .hljs-shebang, .hljs-preprocessor, .hljs-pragma, .userType, .apache .hljs-sqbracket, .nginx .hljs-built_in, .tex .hljs-special, .hljs-prompt + color: #2b91af + +.hljs-phpdoc, .hljs-javadoc, .hljs-xmlDocTag + color: #808080 + +.vhdl + .hljs-typename + font-weight: bold + .hljs-string + color: #666666 + .hljs-literal + color: #a31515 + .hljs-attribute + color: #00b0e8 + +.xml .hljs-attribute + color: #f00 \ No newline at end of file diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/css/vendors/_normalize.sass b/openvidu-browser/config/typedoc/custom-theme/assets/css/vendors/_normalize.sass new file mode 100644 index 00000000..6ce844af --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/css/vendors/_normalize.sass @@ -0,0 +1,424 @@ +/*! normalize.css v1.1.3 | MIT License | git.io/normalize + +/* ========================================================================== + * HTML5 display definitions + * ========================================================================== + +/** + * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. + +article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary + display: block + +/** + * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. + +audio, canvas, video + display: inline-block + *display: inline + *zoom: 1 + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + +audio:not([controls]) + display: none + height: 0 + +/** + * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. + * Known issue: no IE 6 support. + +[hidden] + display: none + +/* ========================================================================== + * Base + * ========================================================================== + +/** + * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using + * `em` units. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + +html + font-size: 100% + /* 1 + -ms-text-size-adjust: 100% + /* 2 + -webkit-text-size-adjust: 100% + /* 2 + font-family: sans-serif + +/** + * Address `font-family` inconsistency between `textarea` and other form + * elements. + +button, input, select, textarea + font-family: sans-serif + +/** + * Address margins handled incorrectly in IE 6/7. + +body + margin: 0 + +/* ========================================================================== + * Links + * ========================================================================== + +/** + * Address `outline` inconsistency between Chrome and other browsers. + +a + &:focus + outline: thin dotted + &:active, &:hover + outline: 0 + +/** + * Improve readability when focused and also mouse hovered in all browsers. + +/* ========================================================================== + * Typography + * ========================================================================== + +/** + * Address font sizes and margins set differently in IE 6/7. + * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, + * and Chrome. + +h1 + font-size: 2em + margin: 0.67em 0 + +h2 + font-size: 1.5em + margin: 0.83em 0 + +h3 + font-size: 1.17em + margin: 1em 0 + +h4 + font-size: 1em + margin: 1.33em 0 + +h5 + font-size: 0.83em + margin: 1.67em 0 + +h6 + font-size: 0.67em + margin: 2.33em 0 + +/** + * Address styling not present in IE 7/8/9, Safari 5, and Chrome. + +abbr[title] + border-bottom: 1px dotted + +/** + * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. + +b, strong + font-weight: bold + +blockquote + margin: 1em 40px + +/** + * Address styling not present in Safari 5 and Chrome. + +dfn + font-style: italic + +/** + * Address differences between Firefox and other browsers. + * Known issue: no IE 6/7 normalization. + +hr + -moz-box-sizing: content-box + box-sizing: content-box + height: 0 + +/** + * Address styling not present in IE 6/7/8/9. + +mark + background: #ff0 + color: #000 + +/** + * Address margins set differently in IE 6/7. + +p, pre + margin: 1em 0 + +/** + * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. + +code, kbd, pre, samp + font-family: monospace, serif + _font-family: 'courier new', monospace + font-size: 1em + +/** + * Improve readability of pre-formatted text in all browsers. + +pre + white-space: pre + white-space: pre-wrap + word-wrap: break-word + +/** + * Address CSS quotes not supported in IE 6/7. + +q + quotes: none + &:before, &:after + content: '' + content: none + +/** + * Address `quotes` property not supported in Safari 4. + +/** + * Address inconsistent and variable font size in all browsers. + +small + font-size: 80% + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + +sub + font-size: 75% + line-height: 0 + position: relative + vertical-align: baseline + +sup + font-size: 75% + line-height: 0 + position: relative + vertical-align: baseline + top: -0.5em + +sub + bottom: -0.25em + +/* ========================================================================== + * Lists + * ========================================================================== + +/** + * Address margins set differently in IE 6/7. + +dl, menu, ol, ul + margin: 1em 0 + +dd + margin: 0 0 0 40px + +/** + * Address paddings set differently in IE 6/7. + +menu, ol, ul + padding: 0 0 0 40px + +/** + * Correct list images handled incorrectly in IE 7. + +nav + ul, ol + list-style: none + list-style-image: none + +/* ========================================================================== + * Embedded content + * ========================================================================== + +/** + * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. + * 2. Improve image quality when scaled in IE 7. + +img + border: 0 + /* 1 + -ms-interpolation-mode: bicubic +/* 2 + +/** + * Correct overflow displayed oddly in IE 9. + +svg:not(:root) + overflow: hidden + +/* ========================================================================== + * Figures + * ========================================================================== + +/** + * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. + +figure, form + margin: 0 + +/* ========================================================================== + * Forms + * ========================================================================== + +/** + * Correct margin displayed oddly in IE 6/7. + +/** + * Define consistent border, margin, and padding. + +fieldset + border: 1px solid #c0c0c0 + margin: 0 2px + padding: 0.35em 0.625em 0.75em + +/** + * 1. Correct color not being inherited in IE 6/7/8/9. + * 2. Correct text not wrapping in Firefox 3. + * 3. Correct alignment displayed oddly in IE 6/7. + +legend + border: 0 + /* 1 + padding: 0 + white-space: normal + /* 2 + *margin-left: -7px +/* 3 + +/** + * 1. Correct font size not being inherited in all browsers. + * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, + * and Chrome. + * 3. Improve appearance and consistency in all browsers. + +button, input, select, textarea + font-size: 100% + /* 1 + margin: 0 + /* 2 + vertical-align: baseline + /* 3 + *vertical-align: middle +/* 3 + +/** + * Address Firefox 3+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + +button, input + line-height: normal + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. + * Correct `select` style inheritance in Firefox 4+ and Opera. + +button, select + text-transform: none + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + * 4. Remove inner spacing in IE 7 without affecting normal text inputs. + * Known issue: inner spacing remains in IE 6. + +button, html input[type="button"] + -webkit-appearance: button + /* 2 + cursor: pointer + /* 3 + *overflow: visible +/* 4 + +input + &[type="reset"], &[type="submit"] + -webkit-appearance: button + /* 2 + cursor: pointer + /* 3 + *overflow: visible +/* 4 + +/** + * Re-set default cursor for disabled elements. + +button[disabled], html input[disabled] + cursor: default + +/** + * 1. Address box sizing set to content-box in IE 8/9. + * 2. Remove excess padding in IE 8/9. + * 3. Remove excess padding in IE 7. + * Known issue: excess padding remains in IE 6. + +input + &[type="checkbox"], &[type="radio"] + box-sizing: border-box + /* 1 + padding: 0 + /* 2 + *height: 13px + /* 3 + *width: 13px + /* 3 + &[type="search"] + -webkit-appearance: textfield + /* 1 + -moz-box-sizing: content-box + -webkit-box-sizing: content-box + /* 2 + box-sizing: content-box + &::-webkit-search-cancel-button, &::-webkit-search-decoration + -webkit-appearance: none + +/** + * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome + * (include `-moz` to future-proof). + +/** + * Remove inner padding and search cancel button in Safari 5 and Chrome + * on OS X. + +/** + * Remove inner padding and border in Firefox 3+. + +button::-moz-focus-inner, input::-moz-focus-inner + border: 0 + padding: 0 + +/** + * 1. Remove default vertical scrollbar in IE 6/7/8/9. + * 2. Improve readability and alignment in all browsers. + +textarea + overflow: auto + /* 1 + vertical-align: top +/* 2 + +/* ========================================================================== + * Tables + * ========================================================================== + +/** + * Remove most spacing between table cells. + +table + border-collapse: collapse + border-spacing: 0 diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/images/icons.png b/openvidu-browser/config/typedoc/custom-theme/assets/images/icons.png new file mode 100644 index 00000000..3836d5fe Binary files /dev/null and b/openvidu-browser/config/typedoc/custom-theme/assets/images/icons.png differ diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/images/icons.psd b/openvidu-browser/config/typedoc/custom-theme/assets/images/icons.psd new file mode 100644 index 00000000..757fa7a8 Binary files /dev/null and b/openvidu-browser/config/typedoc/custom-theme/assets/images/icons.psd differ diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/images/icons@2x.png b/openvidu-browser/config/typedoc/custom-theme/assets/images/icons@2x.png new file mode 100644 index 00000000..5a209e2f Binary files /dev/null and b/openvidu-browser/config/typedoc/custom-theme/assets/images/icons@2x.png differ diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets.png b/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets.png new file mode 100644 index 00000000..c7380532 Binary files /dev/null and b/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets.png differ diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets.psd b/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets.psd new file mode 100644 index 00000000..deef7041 Binary files /dev/null and b/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets.psd differ diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets@2x.png b/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets@2x.png new file mode 100644 index 00000000..4bbbd572 Binary files /dev/null and b/openvidu-browser/config/typedoc/custom-theme/assets/images/widgets@2x.png differ diff --git a/openvidu-browser/config/typedoc/custom-theme/assets/js/lib/backbone-1.1.2.min.js b/openvidu-browser/config/typedoc/custom-theme/assets/js/lib/backbone-1.1.2.min.js new file mode 100644 index 00000000..8ea4b13d --- /dev/null +++ b/openvidu-browser/config/typedoc/custom-theme/assets/js/lib/backbone-1.1.2.min.js @@ -0,0 +1,2 @@ +(function(t,e){if(typeof define==="function"&&define.amd){define(["underscore","jquery","exports"],function(i,r,s){t.Backbone=e(t,s,i,r)})}else if(typeof exports!=="undefined"){var i=require("underscore");e(t,exports,i)}else{t.Backbone=e(t,{},t._,t.jQuery||t.Zepto||t.ender||t.$)}})(this,function(t,e,i,r){var s=t.Backbone;var n=[];var a=n.push;var o=n.slice;var h=n.splice;e.VERSION="1.1.2";e.$=r;e.noConflict=function(){t.Backbone=s;return this};e.emulateHTTP=false;e.emulateJSON=false;var u=e.Events={on:function(t,e,i){if(!c(this,"on",t,[e,i])||!e)return this;this._events||(this._events={});var r=this._events[t]||(this._events[t]=[]);r.push({callback:e,context:i,ctx:i||this});return this},once:function(t,e,r){if(!c(this,"once",t,[e,r])||!e)return this;var s=this;var n=i.once(function(){s.off(t,n);e.apply(this,arguments)});n._callback=e;return this.on(t,n,r)},off:function(t,e,r){var s,n,a,o,h,u,l,f;if(!this._events||!c(this,"off",t,[e,r]))return this;if(!t&&!e&&!r){this._events=void 0;return this}o=t?[t]:i.keys(this._events);for(h=0,u=o.length;h").attr(t);this.setElement(r,false)}else{this.setElement(i.result(this,"el"),false)}}});e.sync=function(t,r,s){var n=T[t];i.defaults(s||(s={}),{emulateHTTP:e.emulateHTTP,emulateJSON:e.emulateJSON});var a={type:n,dataType:"json"};if(!s.url){a.url=i.result(r,"url")||M()}if(s.data==null&&r&&(t==="create"||t==="update"||t==="patch")){a.contentType="application/json";a.data=JSON.stringify(s.attrs||r.toJSON(s))}if(s.emulateJSON){a.contentType="application/x-www-form-urlencoded";a.data=a.data?{model:a.data}:{}}if(s.emulateHTTP&&(n==="PUT"||n==="DELETE"||n==="PATCH")){a.type="POST";if(s.emulateJSON)a.data._method=n;var o=s.beforeSend;s.beforeSend=function(t){t.setRequestHeader("X-HTTP-Method-Override",n);if(o)return o.apply(this,arguments)}}if(a.type!=="GET"&&!s.emulateJSON){a.processData=false}if(a.type==="PATCH"&&k){a.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}var h=s.xhr=e.ajax(i.extend(a,s));r.trigger("request",r,h,s);return h};var k=typeof window!=="undefined"&&!!window.ActiveXObject&&!(window.XMLHttpRequest&&(new XMLHttpRequest).dispatchEvent);var T={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};e.ajax=function(){return e.$.ajax.apply(e.$,arguments)};var $=e.Router=function(t){t||(t={});if(t.routes)this.routes=t.routes;this._bindRoutes();this.initialize.apply(this,arguments)};var S=/\((.*?)\)/g;var H=/(\(\?)?:\w+/g;var A=/\*\w+/g;var I=/[\-{}\[\]+?.,\\\^$|#\s]/g;i.extend($.prototype,u,{initialize:function(){},route:function(t,r,s){if(!i.isRegExp(t))t=this._routeToRegExp(t);if(i.isFunction(r)){s=r;r=""}if(!s)s=this[r];var n=this;e.history.route(t,function(i){var a=n._extractParameters(t,i);n.execute(s,a);n.trigger.apply(n,["route:"+r].concat(a));n.trigger("route",r,a);e.history.trigger("route",n,r,a)});return this},execute:function(t,e){if(t)t.apply(this,e)},navigate:function(t,i){e.history.navigate(t,i);return this},_bindRoutes:function(){if(!this.routes)return;this.routes=i.result(this,"routes");var t,e=i.keys(this.routes);while((t=e.pop())!=null){this.route(t,this.routes[t])}},_routeToRegExp:function(t){t=t.replace(I,"\\$&").replace(S,"(?:$1)?").replace(H,function(t,e){return e?t:"([^/?]+)"}).replace(A,"([^?]*?)");return new RegExp("^"+t+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(t,e){var r=t.exec(e).slice(1);return i.map(r,function(t,e){if(e===r.length-1)return t||null;return t?decodeURIComponent(t):null})}});var N=e.History=function(){this.handlers=[];i.bindAll(this,"checkUrl");if(typeof window!=="undefined"){this.location=window.location;this.history=window.history}};var R=/^[#\/]|\s+$/g;var O=/^\/+|\/+$/g;var P=/msie [\w.]+/;var C=/\/$/;var j=/#.*$/;N.started=false;i.extend(N.prototype,u,{interval:50,atRoot:function(){return this.location.pathname.replace(/[^\/]$/,"$&/")===this.root},getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getFragment:function(t,e){if(t==null){if(this._hasPushState||!this._wantsHashChange||e){t=decodeURI(this.location.pathname+this.location.search);var i=this.root.replace(C,"");if(!t.indexOf(i))t=t.slice(i.length)}else{t=this.getHash()}}return t.replace(R,"")},start:function(t){if(N.started)throw new Error("Backbone.history has already been started");N.started=true;this.options=i.extend({root:"/"},this.options,t);this.root=this.options.root;this._wantsHashChange=this.options.hashChange!==false;this._wantsPushState=!!this.options.pushState;this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var r=this.getFragment();var s=document.documentMode;var n=P.exec(navigator.userAgent.toLowerCase())&&(!s||s<=7);this.root=("/"+this.root+"/").replace(O,"/");if(n&&this._wantsHashChange){var a=e.$('