')
+ .addClass('link' + (
+ app.user('section') == section ? ' selected' : ''
+ ))
+ .html(Ox.toTitleCase(section))
+ .bind({
+ click: function() {
+ app.$ui.sections.children().removeClass('selected');
+ $(this).addClass('selected');
+ app.fn.url(section);
+ }
+ })
+ .appendTo($element);
+ });
+ return $element;
+ },
+
+ themes: function() {
+ var $element = (Ox.UI ? $ : Ox.$)('').addClass('ui themes');
+ ['classic', 'modern'].forEach(function(theme, i) {
+ i && $element.append(Ox.$('').html(' | '));
+ Ox.$('')
+ .addClass('link' + (
+ app.user('theme') == theme ? ' selected' : ''
+ ))
+ .html(theme == 'classic' ? 'Light' : 'Dark')
+ .bind({
+ click: function() {
+ app.$ui.themes.children().removeClass('selected');
+ $(this).addClass('selected');
+ app.fn.setTheme(theme)
+ }
+ })
+ .appendTo($element);
+ });
+ return $element;
+ }
+
+ },
+
+ user: Ox.localStorage('OxJS'),
+
+ };
+
+ app.url = app.fn.url();
+ app.window = app.fn.window();
+ app.fn.load();
+
+});
\ No newline at end of file
diff --git a/index.json b/index.json
new file mode 100644
index 00000000..9b9ad9f8
--- /dev/null
+++ b/index.json
@@ -0,0 +1,145 @@
+{
+ "documentation": [
+ "Ox/js/Array.js",
+ "Ox/js/Collection.js",
+ "Ox/js/Color.js",
+ "Ox/js/Constants.js",
+ "Ox/js/Core.js",
+ "Ox/js/DOM.js",
+ "Ox/js/Date.js",
+ "Ox/js/Encoding.js",
+ "Ox/js/Fallback.js",
+ "Ox/js/Format.js",
+ "Ox/js/Function.js",
+ "Ox/js/Geo.js",
+ "Ox/js/HTML.js",
+ "Ox/js/Hash.js",
+ "Ox/js/JavaScript.js",
+ "Ox/js/Math.js",
+ "Ox/js/Object.js",
+ "Ox/js/RegExp.js",
+ "Ox/js/Request.js",
+ "Ox/js/String.js",
+ "Ox/js/Type.js",
+ "Ox.Geo/Ox.Geo.js",
+ "Ox.Image/Ox.Image.js",
+ "Ox.UI/jquery/jquery.mousewheel.js",
+ "Ox.UI/js/Bar/Ox.Bar.js",
+ "Ox.UI/js/Bar/Ox.Progressbar.js",
+ "Ox.UI/js/Bar/Ox.Resizebar.js",
+ "Ox.UI/js/Bar/Ox.Tabbar.js",
+ "Ox.UI/js/Bar/Ox.Toolbar.js",
+ "Ox.UI/js/Calendar/Ox.Calendar.js",
+ "Ox.UI/js/Calendar/Ox.CalendarDate.js",
+ "Ox.UI/js/Calendar/Ox.ListCalendar.js",
+ "Ox.UI/js/Code/Ox.DocPage.js",
+ "Ox.UI/js/Code/Ox.DocPanel.js",
+ "Ox.UI/js/Code/Ox.ExamplePage.js",
+ "Ox.UI/js/Code/Ox.ExamplePanel.js",
+ "Ox.UI/js/Code/Ox.SourceViewer.js",
+ "Ox.UI/js/Code/Ox.SyntaxHighlighter.js",
+ "Ox.UI/js/Core/Ox.API.js",
+ "Ox.UI/js/Core/Ox.App.js",
+ "Ox.UI/js/Core/Ox.Clipboard.js",
+ "Ox.UI/js/Core/Ox.Container.js",
+ "Ox.UI/js/Core/Ox.Element.js",
+ "Ox.UI/js/Core/Ox.Event.js",
+ "Ox.UI/js/Core/Ox.Focus.js",
+ "Ox.UI/js/Core/Ox.GarbageCollection.js",
+ "Ox.UI/js/Core/Ox.History.js",
+ "Ox.UI/js/Core/Ox.JQueryElement.js",
+ "Ox.UI/js/Core/Ox.Keyboard.js",
+ "Ox.UI/js/Core/Ox.LoadingIcon.js",
+ "Ox.UI/js/Core/Ox.Progressbar.js",
+ "Ox.UI/js/Core/Ox.Request.js",
+ "Ox.UI/js/Core/Ox.Theme.js",
+ "Ox.UI/js/Core/Ox.URL.js",
+ "Ox.UI/js/Form/Ox.ArrayEditable.js",
+ "Ox.UI/js/Form/Ox.ArrayInput.js",
+ "Ox.UI/js/Form/Ox.Button.js",
+ "Ox.UI/js/Form/Ox.ButtonGroup.js",
+ "Ox.UI/js/Form/Ox.Checkbox.js",
+ "Ox.UI/js/Form/Ox.CheckboxGroup.js",
+ "Ox.UI/js/Form/Ox.ColorInput.js",
+ "Ox.UI/js/Form/Ox.ColorPicker.js",
+ "Ox.UI/js/Form/Ox.DateInput.js",
+ "Ox.UI/js/Form/Ox.DateTimeInput.js",
+ "Ox.UI/js/Form/Ox.Editable.js",
+ "Ox.UI/js/Form/Ox.FileButton.js",
+ "Ox.UI/js/Form/Ox.FileInput.js",
+ "Ox.UI/js/Form/Ox.Filter.js",
+ "Ox.UI/js/Form/Ox.Form.js",
+ "Ox.UI/js/Form/Ox.FormElementGroup.js",
+ "Ox.UI/js/Form/Ox.FormItem.js",
+ "Ox.UI/js/Form/Ox.FormPanel.js",
+ "Ox.UI/js/Form/Ox.Input.js",
+ "Ox.UI/js/Form/Ox.InputGroup.js",
+ "Ox.UI/js/Form/Ox.InsertHTMLDialog.js",
+ "Ox.UI/js/Form/Ox.Label.js",
+ "Ox.UI/js/Form/Ox.ObjectArrayInput.js",
+ "Ox.UI/js/Form/Ox.ObjectInput.js",
+ "Ox.UI/js/Form/Ox.OptionGroup.js",
+ "Ox.UI/js/Form/Ox.Picker.js",
+ "Ox.UI/js/Form/Ox.PlaceInput.js",
+ "Ox.UI/js/Form/Ox.PlacePicker.js",
+ "Ox.UI/js/Form/Ox.Range.js",
+ "Ox.UI/js/Form/Ox.Select.js",
+ "Ox.UI/js/Form/Ox.SelectInput.js",
+ "Ox.UI/js/Form/Ox.Spreadsheet.js",
+ "Ox.UI/js/Form/Ox.TimeInput.js",
+ "Ox.UI/js/List/Ox.Chart.js",
+ "Ox.UI/js/List/Ox.IconItem.js",
+ "Ox.UI/js/List/Ox.IconList.js",
+ "Ox.UI/js/List/Ox.InfoList.js",
+ "Ox.UI/js/List/Ox.List.js",
+ "Ox.UI/js/List/Ox.ListItem.js",
+ "Ox.UI/js/List/Ox.ListPage.js",
+ "Ox.UI/js/List/Ox.TextList.js",
+ "Ox.UI/js/List/Ox.TreeList.js",
+ "Ox.UI/js/Map/Ox.ListMap.js",
+ "Ox.UI/js/Map/Ox.Map.js",
+ "Ox.UI/js/Map/Ox.MapImage.js",
+ "Ox.UI/js/Map/Ox.MapMarker.js",
+ "Ox.UI/js/Map/Ox.MapMarkerImage.js",
+ "Ox.UI/js/Map/Ox.MapPlace.js",
+ "Ox.UI/js/Map/Ox.MapRectangle.js",
+ "Ox.UI/js/Map/Ox.MapRectangleMarker.js",
+ "Ox.UI/js/Menu/Ox.MainMenu.js",
+ "Ox.UI/js/Menu/Ox.Menu.js",
+ "Ox.UI/js/Menu/Ox.MenuButton.js",
+ "Ox.UI/js/Menu/Ox.MenuItem.js",
+ "Ox.UI/js/Panel/Ox.CollapsePanel.js",
+ "Ox.UI/js/Panel/Ox.Panel.js",
+ "Ox.UI/js/Panel/Ox.SplitPanel.js",
+ "Ox.UI/js/Panel/Ox.TabPanel.js",
+ "Ox.UI/js/Test/Ox.TestElement.js",
+ "Ox.UI/js/Test/Ox.TestWidget.js",
+ "Ox.UI/js/Video/Ox.AnnotationFolder.js",
+ "Ox.UI/js/Video/Ox.AnnotationPanel.js",
+ "Ox.UI/js/Video/Ox.BlockVideoTimeline.js",
+ "Ox.UI/js/Video/Ox.LargeVideoTimeline.js",
+ "Ox.UI/js/Video/Ox.SmallVideoTimeline.js",
+ "Ox.UI/js/Video/Ox.SmallVideoTimelineImage.js",
+ "Ox.UI/js/Video/Ox.VideoEditor.js",
+ "Ox.UI/js/Video/Ox.VideoEditorPlayer.js",
+ "Ox.UI/js/Video/Ox.VideoElement.js",
+ "Ox.UI/js/Video/Ox.VideoPanel.js",
+ "Ox.UI/js/Video/Ox.VideoPlayer.js",
+ "Ox.UI/js/Video/Ox.VideoPreview.js",
+ "Ox.UI/js/Video/Ox.VideoTimelinePlayer.js",
+ "Ox.UI/js/Window/Ox.Dialog.js",
+ "Ox.UI/js/Window/Ox.Dialog_.js",
+ "Ox.UI/js/Window/Ox.Layer.js",
+ "Ox.UI/js/Window/Ox.Tooltip.js",
+ "Ox.Unicode/Ox.Unicode.js"
+ ],
+ "examples": [
+ "cities",
+ "countries",
+ "list_of_countries"
+ ],
+ "readme": [
+ "test1",
+ "test2"
+ ]
+}
\ No newline at end of file