Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

initial commit!

  • Loading branch information...
commit 00c48a54f9017a3f4c9470d99c31d5d336cc822d 0 parents
@marcello3d authored
1  .idea/.name
@@ -0,0 +1 @@
+node-mongolian
7 .idea/ant.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="AntConfiguration">
+ <defaultAnt bundledAnt="true" />
+ </component>
+</project>
+
24 .idea/compiler.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="CompilerConfiguration">
+ <option name="DEFAULT_COMPILER" value="Javac" />
+ <resourceExtensions>
+ <entry name=".+\.(properties|xml|html|dtd|tld)" />
+ <entry name=".+\.(gif|png|jpeg|jpg)" />
+ </resourceExtensions>
+ <wildcardResourcePatterns>
+ <entry name="?*.properties" />
+ <entry name="?*.xml" />
+ <entry name="?*.gif" />
+ <entry name="?*.png" />
+ <entry name="?*.jpeg" />
+ <entry name="?*.jpg" />
+ <entry name="?*.html" />
+ <entry name="?*.dtd" />
+ <entry name="?*.tld" />
+ <entry name="?*.ftl" />
+ </wildcardResourcePatterns>
+ <annotationProcessing enabled="false" useClasspath="true" />
+ </component>
+</project>
+
5 .idea/copyright/profiles_settings.xml
@@ -0,0 +1,5 @@
+<component name="CopyrightManager">
+ <settings default="">
+ <module2copyright />
+ </settings>
+</component>
5 .idea/encodings.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
+</project>
+
41 .idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,41 @@
+<component name="InspectionProjectProfileManager">
+ <profile version="1.0" is_locked="false">
+ <option name="myName" value="Project Default" />
+ <option name="myLocal" value="false" />
+ <inspection_tool class="Fix shebang" enabled="true" level="WARNING" enabled_by_default="true">/bin/sh#/bin/bash</inspection_tool>
+ <inspection_tool class="JavaDoc" enabled="false" level="WARNING" enabled_by_default="false">
+ <option name="TOP_LEVEL_CLASS_OPTIONS">
+ <value>
+ <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+ <option name="REQUIRED_TAGS" value="" />
+ </value>
+ </option>
+ <option name="INNER_CLASS_OPTIONS">
+ <value>
+ <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+ <option name="REQUIRED_TAGS" value="" />
+ </value>
+ </option>
+ <option name="METHOD_OPTIONS">
+ <value>
+ <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+ <option name="REQUIRED_TAGS" value="@return@param@throws or @exception" />
+ </value>
+ </option>
+ <option name="FIELD_OPTIONS">
+ <value>
+ <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+ <option name="REQUIRED_TAGS" value="" />
+ </value>
+ </option>
+ <option name="IGNORE_DEPRECATED" value="false" />
+ <option name="IGNORE_JAVADOC_PERIOD" value="true" />
+ <option name="IGNORE_DUPLICATED_THROWS" value="false" />
+ <option name="IGNORE_POINT_TO_ITSELF" value="false" />
+ <option name="myAdditionalJavadocTags" value="" />
+ </inspection_tool>
+ <inspection_tool class="UnterminatedStatementJS" enabled="false" level="WARNING" enabled_by_default="false">
+ <option name="ignoreSemicolonAtEndOfBlock" value="true" />
+ </inspection_tool>
+ </profile>
+</component>
7 .idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,7 @@
+<component name="InspectionProjectProfileManager">
+ <settings>
+ <option name="PROJECT_PROFILE" value="Project Default" />
+ <option name="USE_PROJECT_PROFILE" value="true" />
+ <version value="1.0" />
+ </settings>
+</component>
111 .idea/misc.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="BuildJarProjectSettings">
+ <option name="BUILD_JARS_ON_MAKE" value="false" />
+ </component>
+ <component name="CCaseConfig">
+ <option name="checkoutReserved" value="false" />
+ <option name="markExternalChangeAsUpToDate" value="true" />
+ <option name="checkInUseHijack" value="true" />
+ <option name="useUcmModel" value="true" />
+ <option name="synchOutside" value="false" />
+ <option name="isHistoryResticted" value="true" />
+ <option name="useIdenticalSwitch" value="true" />
+ <option name="synchActivitiesOnRefresh" value="true" />
+ <option name="lastScr" value="" />
+ <option name="scrTextFileName" value="" />
+ <option name="historyRevisionsNumber" value="4" />
+ </component>
+ <component name="DependencyValidationManager">
+ <option name="SKIP_IMPORT_STATEMENTS" value="false" />
+ </component>
+ <component name="IdProvider" IDEtalkID="199536597616709B6C43EA6EA559F2A5" />
+ <component name="JavadocGenerationManager">
+ <option name="OUTPUT_DIRECTORY" />
+ <option name="OPTION_SCOPE" value="protected" />
+ <option name="OPTION_HIERARCHY" value="true" />
+ <option name="OPTION_NAVIGATOR" value="true" />
+ <option name="OPTION_INDEX" value="true" />
+ <option name="OPTION_SEPARATE_INDEX" value="true" />
+ <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
+ <option name="OPTION_DEPRECATED_LIST" value="true" />
+ <option name="OTHER_OPTIONS" value="" />
+ <option name="HEAP_SIZE" />
+ <option name="LOCALE" />
+ <option name="OPEN_IN_BROWSER" value="true" />
+ </component>
+ <component name="ProjectKey">
+ <option name="state" value="project://default" />
+ </component>
+ <component name="ProjectResources">
+ <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
+ </component>
+ <component name="ProjectRootManager" version="2" languageLevel="JDK_1_5" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK">
+ <output url="file://$PROJECT_DIR$/out" />
+ </component>
+ <component name="RegexUtilComponent" text="1900-01-01 2007/08/13 1900.01.01 1900 01 01 1900-01.01 1900 13 01 1900 02 31" flags="0" regex="(19|20)\d\d([- /.])(0[1-9]|1[012])\2(0[1-9]|[12][0-9]|3[01])" mode="0" />
+ <component name="ResourceManagerContainer">
+ <option name="myResourceBundles">
+ <value>
+ <list size="0" />
+ </value>
+ </option>
+ </component>
+ <component name="StarteamConfiguration">
+ <option name="SERVER" value="" />
+ <option name="PORT" value="49201" />
+ <option name="USER" value="" />
+ <option name="PASSWORD" value="" />
+ <option name="PROJECT" value="" />
+ <option name="VIEW" value="" />
+ <option name="ALTERNATIVE_WORKING_PATH" value="" />
+ <option name="LOCK_ON_CHECKOUT" value="false" />
+ <option name="UNLOCK_ON_CHECKIN" value="false" />
+ </component>
+ <component name="Talios.JiraConfigurationComponent" enableIssueTracking="false" autoRefresh="false" useExternalBrowser="false" refreshTimeout="0" annotateissues="false">
+ <servers />
+ <columns />
+ </component>
+ <component name="XPathView.XPathProjectComponent">
+ <history />
+ <find-history />
+ </component>
+ <component name="atlassian-ide-plugin-workspace">
+ <option name="bambooConfiguration">
+ <BambooWorkspaceConfiguration>
+ <option name="view">
+ <BambooViewConfigurationBean />
+ </option>
+ </BambooWorkspaceConfiguration>
+ </option>
+ <option name="crucibleConfiguration">
+ <CrucibleWorkspaceConfiguration>
+ <option name="crucibleFilters">
+ <CrucibleFiltersBean>
+ <option name="manualFilter">
+ <CustomFilterBean />
+ </option>
+ <option name="recenltyOpenFilter">
+ <RecentlyOpenReviewsFilter />
+ </option>
+ </CrucibleFiltersBean>
+ </option>
+ <option name="view">
+ <CrucibleViewConfigurationBean />
+ </option>
+ </CrucibleWorkspaceConfiguration>
+ </option>
+ <option name="defaultCredentials">
+ <UserCfgBean />
+ </option>
+ </component>
+ <component name="atlassian-ide-plugin-workspace-issues">
+ <option name="view">
+ <JiraViewConfigurationBean />
+ </option>
+ </component>
+</project>
+
9 .idea/modules.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ProjectModuleManager">
+ <modules>
+ <module fileurl="file://$PROJECT_DIR$/Node-mongolian.iml" filepath="$PROJECT_DIR$/Node-mongolian.iml" />
+ </modules>
+ </component>
+</project>
+
125 .idea/uiDesigner.xml
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Palette2">
+ <group name="Swing">
+ <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+ </item>
+ <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+ <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+ <initial-values>
+ <property name="text" value="Button" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="RadioButton" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="CheckBox" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="Label" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+ <preferred-size width="-1" height="20" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+ </item>
+ </group>
+ </component>
+</project>
+
7 .idea/vcs.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="VcsDirectoryMappings">
+ <mapping directory="" vcs="Git" />
+ </component>
+</project>
+
634 .idea/workspace.xml
@@ -0,0 +1,634 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="BuildServerSettings">
+ <option name="LOGIN" value="" />
+ <option name="SERVER_URL" value="http://buildserver" />
+ <option name="PASSWORD" />
+ <option name="REMEMBER_ME" value="true" />
+ <option name="USE_IDEA_PROXY_SETTINGS" value="true" />
+ <option name="INSPECTIONS_BUILD_TYPE_NAME" />
+ <option name="INSPECTIONS_PROJECT_ID" />
+ <option name="INSPECTIONS_BUILD_TYPE_ID" />
+ <option name="DUPLICATES_BUILD_TYPE_NAME" />
+ <option name="DUPLICATES_PROJECT_ID" />
+ <option name="DUPLICATES_BUILD_TYPE_ID" />
+ <option name="PERFORM_COMMIT_IF_SUCCESSFUL" value="true" />
+ <option name="PERFORM_COMMIT_IF_NO_NEW_FAILED_TESTS" value="false" />
+ <option name="REQUEST_CONFIRMATON" value="false" />
+ <option name="PRE_TESTED_COMMIT" value="true" />
+ <option name="PROJECT_STATUS_DIALOG_SPLITTER_DIVIDER_LOCATION" value="500" />
+ <option name="CHANGES_STATUS_DIALOG_SPLITTER_DIVIDER_LOCATION" value="500" />
+ <option name="FILTER_BY_USER" value="true" />
+ <option name="FILTER_REMOTE_RUN_TREE" value="false" />
+ <option name="FILTER_BY_STATUS" value="false" />
+ <option name="SHOW_CLOSE_PROMPT" value="true" />
+ <option name="TOOL_WINDOW_SELECTED_CONTENT_INDEX" value="0" />
+ </component>
+ <component name="ChangeListManager">
+ <list default="true" id="bf165bbf-71c9-4814-8b05-8448475689b7" name="Default" comment="">
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/.name" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/ant.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/compiler.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/copyright/profiles_settings.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/encodings.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/inspectionProfiles/profiles_settings.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/misc.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/modules.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/uiDesigner.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/vcs.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.npmignore" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/LICENSE" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Node-mongolian.iml" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Readme.md" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/examples/mongolian_trainer.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/collection.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/cursor.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/db.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/server.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/util.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/mongolian.js" />
+ <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/package.json" />
+ </list>
+ <ignored path="node-mongolian.iws" />
+ <ignored path=".idea/workspace.xml" />
+ <option name="TRACKING_ENABLED" value="true" />
+ <option name="SHOW_DIALOG" value="false" />
+ <option name="HIGHLIGHT_CONFLICTS" value="true" />
+ <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+ <option name="LAST_RESOLUTION" value="IGNORE" />
+ </component>
+ <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
+ <component name="CoverageDataManager" choice="3" />
+ <component name="CreatePatchCommitExecutor">
+ <option name="PATCH_PATH" value="" />
+ <option name="REVERSE_PATCH" value="false" />
+ </component>
+ <component name="DaemonCodeAnalyzer">
+ <disable_hints />
+ </component>
+ <component name="DebuggerManager">
+ <breakpoint_any>
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ </breakpoint_any>
+ <breakpoint_rules />
+ <ui_properties />
+ </component>
+ <component name="FavoritesManager">
+ <favorites_list name="node-mongolian" />
+ </component>
+ <component name="FileEditorManager">
+ <leaf>
+ <file leaf-file-name="Readme.md" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/Readme.md">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="0" selection-start="40" selection-end="40" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="LICENSE" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/LICENSE">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="19" column="17" selection-start="906" selection-end="906" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="mongolian.js" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/mongolian.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="1" column="40" selection-start="105" selection-end="105" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="package.json" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/package.json">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="36" selection-start="61" selection-end="61" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="mongolian_trainer.js" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/examples/mongolian_trainer.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="12" column="34" selection-start="360" selection-end="360" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="cursor.js" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/lib/cursor.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="99" column="19" selection-start="3051" selection-end="3051" vertical-scroll-proportion="-3.12">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="collection.js" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/lib/collection.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="78" column="8" selection-start="2260" selection-end="2260" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name=".npmignore" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/.npmignore">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="1" column="5" selection-start="11" selection-end="11" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="util.js" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/lib/util.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="server.js" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/lib/server.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="22" column="0" selection-start="674" selection-end="674" vertical-scroll-proportion="0.33266532">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="db.js" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/lib/db.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="4" column="0" selection-start="161" selection-end="161" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ </leaf>
+ </component>
+ <component name="FindManager">
+ <FindUsagesManager>
+ <setting name="OPEN_NEW_TAB" value="false" />
+ </FindUsagesManager>
+ </component>
+ <component name="Git.Settings">
+ <option name="CHECKOUT_INCLUDE_TAGS" value="false" />
+ <option name="UPDATE_CHANGES_POLICY" value="STASH" />
+ </component>
+ <component name="IdeDocumentHistory">
+ <option name="changedFiles">
+ <list>
+ <option value="$PROJECT_DIR$/mongolian.js" />
+ <option value="$PROJECT_DIR$/.npmignore" />
+ <option value="$PROJECT_DIR$/test/mongolian_trainer.js" />
+ <option value="$PROJECT_DIR$/LICENSE" />
+ <option value="$PROJECT_DIR$/package.json" />
+ <option value="$PROJECT_DIR$/Readme.md" />
+ <option value="$PROJECT_DIR$/lib/db.js" />
+ <option value="$PROJECT_DIR$/lib/cursor.js" />
+ <option value="$PROJECT_DIR$/lib/collection.js" />
+ <option value="$PROJECT_DIR$/lib/server.js" />
+ </list>
+ </option>
+ </component>
+ <component name="InspectionPassRegistrar">
+ <option name="LOAD_NEW_PROBLEMS" value="true" />
+ </component>
+ <component name="MavenRunner">
+ <option name="jreName" value="#JAVA_INTERNAL" />
+ </component>
+ <component name="ModuleEditorState">
+ <option name="LAST_EDITED_MODULE_NAME" />
+ <option name="LAST_EDITED_TAB_NAME" />
+ </component>
+ <component name="ProjectInspectionProfilesVisibleTreeState">
+ <entry key="Project Default">
+ <profile-state>
+ <expanded-state>
+ <State>
+ <id>Code style issues</id>
+ </State>
+ <State>
+ <id>Inspections</id>
+ </State>
+ <State>
+ <id>JavaScript</id>
+ </State>
+ </expanded-state>
+ <selected-state>
+ <State>
+ <id>UnterminatedStatementJS</id>
+ </State>
+ </selected-state>
+ </profile-state>
+ </entry>
+ </component>
+ <component name="ProjectLevelVcsManager" settingsEditedManually="false">
+ <OptionsSetting value="true" id="Add" />
+ <OptionsSetting value="true" id="Remove" />
+ <OptionsSetting value="true" id="Checkout" />
+ <OptionsSetting value="true" id="Update" />
+ <OptionsSetting value="true" id="Status" />
+ <OptionsSetting value="true" id="Edit" />
+ <ConfirmationsSetting value="2" id="Add" />
+ <ConfirmationsSetting value="0" id="Remove" />
+ </component>
+ <component name="ProjectReloadState">
+ <option name="STATE" value="0" />
+ </component>
+ <component name="ProjectView">
+ <navigator currentView="ProjectPane" proportions="" version="1" splitterProportion="0.5">
+ <flattenPackages />
+ <showMembers />
+ <showModules />
+ <showLibraryContents />
+ <hideEmptyPackages />
+ <abbreviatePackageNames />
+ <autoscrollToSource />
+ <autoscrollFromSource />
+ <sortByType />
+ </navigator>
+ <panes>
+ <pane id="Scope" />
+ <pane id="Favorites" />
+ <pane id="ProjectPane">
+ <subPane>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="lib" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="node-mongolian" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="examples" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
+ </pane>
+ <pane id="PackagesPane" />
+ </panes>
+ </component>
+ <component name="PropertiesComponent">
+ <property name="GoToFile.includeJavaFiles" value="false" />
+ <property name="GoToClass.toSaveIncludeLibraries" value="false" />
+ <property name="options.splitter.main.proportions" value="0.3" />
+ <property name="options.lastSelected" value="preferences.externalResources" />
+ <property name="MemberChooser.sorted" value="false" />
+ <property name="MemberChooser.showClasses" value="true" />
+ <property name="GoToClass.includeLibraries" value="false" />
+ <property name="MemberChooser.copyJavadoc" value="false" />
+ <property name="options.splitter.details.proportions" value="0.2" />
+ <property name="options.searchVisible" value="true" />
+ </component>
+ <component name="RunManager">
+ <configuration default="true" type="Remote" factoryName="Remote">
+ <option name="USE_SOCKET_TRANSPORT" value="true" />
+ <option name="SERVER_MODE" value="false" />
+ <option name="SHMEM_ADDRESS" value="javadebug" />
+ <option name="HOST" value="localhost" />
+ <option name="PORT" value="5005" />
+ <method>
+ <option name="AntTarget" enabled="false" />
+ <option name="BuildArtifacts" enabled="false" />
+ <option name="Maven.BeforeRunTask" enabled="false" />
+ <option name="SBT.BeforeRunTask" enabled="false" />
+ </method>
+ </configuration>
+ <configuration default="true" type="Applet" factoryName="Applet">
+ <module name="" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="HTML_FILE_NAME" />
+ <option name="HTML_USED" value="false" />
+ <option name="WIDTH" value="400" />
+ <option name="HEIGHT" value="300" />
+ <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
+ <option name="VM_PARAMETERS" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <method>
+ <option name="AntTarget" enabled="false" />
+ <option name="BuildArtifacts" enabled="false" />
+ <option name="Make" enabled="true" />
+ <option name="Maven.BeforeRunTask" enabled="false" />
+ <option name="SBT.BeforeRunTask" enabled="false" />
+ </method>
+ </configuration>
+ <configuration default="true" type="Application" factoryName="Application">
+ <extension name="coverage" enabled="false" merge="false" runner="emma" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="VM_PARAMETERS" />
+ <option name="PROGRAM_PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="ENABLE_SWING_INSPECTOR" value="false" />
+ <option name="ENV_VARIABLES" />
+ <option name="PASS_PARENT_ENVS" value="true" />
+ <module name="" />
+ <envs />
+ <method>
+ <option name="AntTarget" enabled="false" />
+ <option name="BuildArtifacts" enabled="false" />
+ <option name="Make" enabled="true" />
+ <option name="Maven.BeforeRunTask" enabled="false" />
+ <option name="SBT.BeforeRunTask" enabled="false" />
+ </method>
+ </configuration>
+ <configuration default="true" type="JUnit" factoryName="JUnit">
+ <extension name="coverage" enabled="false" merge="false" runner="emma" />
+ <module name="" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="PACKAGE_NAME" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="METHOD_NAME" />
+ <option name="TEST_OBJECT" value="class" />
+ <option name="VM_PARAMETERS" />
+ <option name="PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ENV_VARIABLES" />
+ <option name="PASS_PARENT_ENVS" value="true" />
+ <option name="TEST_SEARCH_SCOPE">
+ <value defaultName="moduleWithDependencies" />
+ </option>
+ <envs />
+ <patterns />
+ <method>
+ <option name="AntTarget" enabled="false" />
+ <option name="BuildArtifacts" enabled="false" />
+ <option name="Make" enabled="true" />
+ <option name="Maven.BeforeRunTask" enabled="false" />
+ <option name="SBT.BeforeRunTask" enabled="false" />
+ </method>
+ </configuration>
+ <list size="0" />
+ <configuration name="&lt;template&gt;" type="WebApp" default="true" selected="false">
+ <Host>localhost</Host>
+ <Port>5050</Port>
+ </configuration>
+ </component>
+ <component name="ShelveChangesManager" show_recycled="false" />
+ <component name="SvnConfiguration" maxAnnotateRevisions="500">
+ <option name="USER" value="" />
+ <option name="PASSWORD" value="" />
+ <option name="LAST_MERGED_REVISION" />
+ <option name="MERGE_DRY_RUN" value="false" />
+ <option name="MERGE_DIFF_USE_ANCESTRY" value="true" />
+ <option name="UPDATE_LOCK_ON_DEMAND" value="false" />
+ <option name="IGNORE_SPACES_IN_MERGE" value="false" />
+ <option name="DETECT_NESTED_COPIES" value="false" />
+ <option name="CHECK_NESTED_FOR_QUICK_MERGE" value="false" />
+ <option name="IGNORE_SPACES_IN_ANNOTATE" value="true" />
+ <option name="SHOW_MERGE_SOURCES_IN_ANNOTATE" value="true" />
+ <option name="FORCE_UPDATE" value="false" />
+ <configuration useDefault="true">$USER_HOME$/.subversion_IDEA</configuration>
+ <myIsUseDefaultProxy>false</myIsUseDefaultProxy>
+ </component>
+ <component name="TaskManager">
+ <task active="true" id="Default" summary="Default task">
+ <created>1299120437394</created>
+ <updated>1299120437394</updated>
+ </task>
+ <servers />
+ </component>
+ <component name="ToolWindowManager">
+ <frame x="0" y="22" width="1440" height="874" extended-state="6" />
+ <editor active="true" />
+ <layout>
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.32908162" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="SBT Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="TeamCity" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
+ <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
+ <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3295129" sideWeight="0.67091835" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+ <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
+ <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+ </layout>
+ </component>
+ <component name="VcsManagerConfiguration">
+ <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
+ <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
+ <option name="PERFORM_UPDATE_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_COMMIT_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_EDIT_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_CHECKOUT_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_ADD_REMOVE_IN_BACKGROUND" value="true" />
+ <option name="PERFORM_ROLLBACK_IN_BACKGROUND" value="false" />
+ <option name="CHECK_LOCALLY_CHANGED_CONFLICTS_IN_BACKGROUND" value="true" />
+ <option name="ENABLE_BACKGROUND_PROCESSES" value="false" />
+ <option name="CHANGED_ON_SERVER_INTERVAL" value="60" />
+ <option name="SHOW_ONLY_CHANGED_IN_SELECTION_DIFF" value="true" />
+ <option name="CHECK_COMMIT_MESSAGE_SPELLING" value="true" />
+ <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
+ <option name="LAST_COMMIT_MESSAGE" />
+ <option name="MAKE_NEW_CHANGELIST_ACTIVE" value="true" />
+ <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
+ <option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
+ <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
+ <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
+ <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
+ <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
+ <option name="ACTIVE_VCS_NAME" />
+ <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
+ <option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
+ <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
+ <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
+ </component>
+ <component name="XDebuggerManager">
+ <breakpoint-manager />
+ </component>
+ <component name="antWorkspaceConfiguration">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="FILTER_TARGETS" value="false" />
+ </component>
+ <component name="editorHistoryManager">
+ <entry file="file://$PROJECT_DIR$/examples/mongolian_trainer.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="12" column="34" selection-start="360" selection-end="360" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/package.json">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="36" selection-start="61" selection-end="61" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/Readme.md">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="2" column="0" selection-start="40" selection-end="40" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/mongolian.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="1" column="40" selection-start="105" selection-end="105" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/LICENSE">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="19" column="17" selection-start="906" selection-end="906" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/.npmignore">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="1" column="5" selection-start="11" selection-end="11" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/lib/util.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/lib/db.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="4" column="0" selection-start="161" selection-end="161" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/lib/cursor.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="99" column="19" selection-start="3051" selection-end="3051" vertical-scroll-proportion="-3.12">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/lib/collection.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="78" column="8" selection-start="2260" selection-end="2260" vertical-scroll-proportion="0.0">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/lib/server.js">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="22" column="0" selection-start="674" selection-end="674" vertical-scroll-proportion="0.33266532">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </component>
+ <component name="masterDetails">
+ <states>
+ <state key="Copyright.UI">
+ <settings>
+ <splitter-proportions />
+ </settings>
+ </state>
+ <state key="GlobalLibrariesConfigurable.UI">
+ <settings>
+ <splitter-proportions />
+ </settings>
+ </state>
+ <state key="ScopeChooserConfigurable.UI">
+ <settings>
+ <splitter-proportions />
+ </settings>
+ </state>
+ </states>
+ </component>
+</project>
+
2  .npmignore
@@ -0,0 +1,2 @@
+.idea
+*.iml
20 LICENSE
@@ -0,0 +1,20 @@
+Copyright (c) 2011 Marcello Bastéa-Forte (marcello@cellosoft.com)
+
+This software is provided 'as-is', without any express or implied
+warranty. In no event will the authors be held liable for any damages
+arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it
+freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+
+ 3. This notice may not be removed or altered from any source
+ distribution.
12 Node-mongolian.iml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="JAVA_MODULE" version="4">
+ <component name="NewModuleRootManager" inherit-compiler-output="true">
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/lib" isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
+
11 Readme.md
@@ -0,0 +1,11 @@
+Mongolian DeadBeef
+====================
+Mongo DB driver for node.js
+
+Introduction
+============
+This is super under construction, but go check out examples/mongolian_trainer.js and the rest of the source!
+
+zlib license
+============
+Mongolian DeadBeef
49 examples/mongolian_trainer.js
@@ -0,0 +1,49 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+
+var Mongolian = require('mongolian')
+
+var server = new Mongolian
+
+var db = server.db("mongolian_trainer"),
+ small = db.collection("small"),
+ medium = db.collection("medium"),
+ large = db.collection("large")
+
+function fillCollection(collection, max) {
+ collection.count(function(err,count) {
+ console.log(collection+" count = "+count)
+ while (count < max) {
+ var toInsert = []
+ while (count < max) {
+ toInsert.push({ foo: Math.random(), index: count++ })
+ if (toInsert.length > 500) {
+ break
+ }
+ }
+ collection.insert(toInsert)
+ }
+ })
+}
+
+fillCollection(small, 50)
+fillCollection(medium, 500)
+fillCollection(large, 50000)
+
+function asyncLog(prefix) {
+ return function(err,value) {
+ if (err) {
+ console.warn("Error getting "+prefix+':',err, err.stack)
+ } else {
+ console.log(prefix+':',value)
+ }
+ }
+}
+
+server.dbNames(asyncLog("db names"))
+db.collectionNames(asyncLog("collection names"))
+
+small.find({foo:{$lte:0.5}},{foo:true,_id:false}).limit(49).toArray(asyncLog('small find limit 49'))
+small.find().limit(100).sort({foo:1}).toArray(asyncLog('small find sorted limit 50'))
+small.find().batchSize(10).toArray(asyncLog('medium find all'))
+medium.findOne(asyncLog('medium findOne'))
+
127 lib/collection.js
@@ -0,0 +1,127 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+var safetyNet = require('./util').safetyNet,
+ MongolianCursor = require('./cursor')
+
+var MongolianCollection = module.exports = function(db, name) {
+ this.server = db.server
+ this.db = db
+ this.name = name
+ this.fullName = db.name + "." + name
+}
+
+MongolianCollection.prototype.drop = function() {
+ throw new Error("Unsupported operation")
+}
+
+MongolianCollection.prototype.getIndexKeys = function() {
+ throw new Error("Unsupported operation")
+}
+
+MongolianCollection.prototype.ensureIndex = function() {
+ throw new Error("Unsupported operation")
+}
+
+
+/**
+ * Returns a new MonglianCursor object
+ */
+MongolianCollection.prototype.find = function(criteria, fields) {
+ return new MongolianCursor(this, criteria, fields)
+}
+
+/**
+ * Shorthand for collection.find(criteria).count(callback)
+ * function(callback): count all documents
+ * function(criteria, callback): count documents matching criteria
+ */
+MongolianCollection.prototype.count = function(criteria, callback) {
+ if (!callback) {
+ callback = criteria
+ criteria = undefined
+ }
+ this.find(criteria).count(callback)
+}
+
+/**
+ * Shorthand for collection.find(criteria,fields).limit(1).next(callback)
+ * function(callback)
+ * function(criteria, callback)
+ * function(criteria, fields, callback)
+ */
+MongolianCollection.prototype.findOne = function(criteria, fields, callback) {
+ if (!callback) {
+ callback = fields
+ fields = undefined
+ }
+ if (!callback) {
+ callback = criteria
+ criteria = undefined
+ }
+ this.find(criteria, fields).limit(1).next(callback)
+}
+
+/**
+ * Insert an object or array of objects
+ */
+MongolianCollection.prototype.insert = function(object, callback) {
+ if (!object) throw new Error("No object to insert!")
+ var isArray = Array.isArray(objects)
+ var objects = isArray ? object : [object]
+ // Assign ids
+ objects.forEach(function(object) {
+ if (!object._id) {
+ object._id = db.pkFactory.createPk()
+ }
+ })
+ var insertCommand = new mongo.InsertCommand(this.fullName)
+ insertCommand.documents = objects
+ this.server.sendCommand(insertCommand,safetyNet(callback, function (result) {
+ callback(err, isArray ? objects : object)
+ }))
+}
+
+/**
+ * Update an existing object
+ * function(criteria, objNew, callback)
+ * function(criteria, objNew, upsert, callback)
+ * function(criteria, objNew, upsert, multi, callback)
+ */
+MongolianCollection.prototype.update = function(criteria, objNew, upsert, multi, callback) {
+ if (!callback) {
+ callback = multi
+ multi = false
+ }
+ if (!callback) {
+ callback = upsert
+ upsert = false
+ }
+ var updateCommand = new mongo.UpdateCommand(this.fullName, criteria, objNew, { upsert:upsert, multi:multi })
+ this.server.sendCommand(updateCommand, callback)
+}
+
+/**
+ * Convenience method that calls update if object has an _id, otherwise calls insert
+ */
+MongolianCollection.prototype.save = function(object, callback) {
+ if (object._id) {
+ this.update({_id:object._id}, object, true, false, callback)
+ } else {
+ this.insert(object, callback)
+ }
+}
+/**
+ * Removes documents from this collection using the given criteria
+ * function(callback)
+ * function(criteria, callback)
+ */
+MongolianCollection.prototype.remove = function(criteria, callback) {
+ if (!callback) {
+ callback = criteria
+ criteria = {}
+ }
+ var deleteCommand = new mongo.DeleteCommand(this.fullName, criteria)
+ this.server.sendCommand(deleteCommand, callback)}
+
+MongolianCollection.prototype.toString = function() {
+ return this.db + "." + this.name
+}
238 lib/cursor.js
@@ -0,0 +1,238 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+var mongo = require('mongodb'),
+ safetyNet = require('./util').safetyNet
+
+var MongolianCursor = module.exports = function(collection, criteria, fields) {
+ this.server = collection.db.server
+ this.db = collection.db
+ this.collection = collection
+ this.criteria = criteria
+ this.fields = fields
+ this._retrieved = 0
+ this._batchSize = 100
+}
+/**
+ * Resets the cursor to its initial state (this will cause the query to be executed again)
+ */
+MongolianCursor.prototype.reset = function() {
+ this.close()
+ this._retrieved = 0
+ delete this._currentBatch
+}
+
+/**
+ * Closes the cursor
+ */
+MongolianCursor.prototype.close = function(callback) {
+ if (this._currentBatch && this._currentBatch.cursorId) {
+ this.server.sendCommand(new mongo.KillCursorCommand([this._currentBatch.cursorId]), callback)
+ delete this._currentBatch.cursorId
+ }
+}
+
+/**
+ * Adds a special value to this query
+ */
+MongolianCursor.prototype.addSpecial = function(name, value) {
+ if (this._currentBatch) throw new Error("Query already executed")
+ if (!this._specials) {
+ this._specials = { $query: this.criteria || {} }
+ }
+ this._specials[name] = value
+ return this
+}
+
+/**
+ * Specify the number of documents to retrieve per network request
+ */
+MongolianCursor.prototype.batchSize = function(size) {
+ if (this._currentBatch) throw new Error("Query already executed")
+ if (size <= 1) throw new Error("Batch size must be > 1")
+ this._batchSize = size
+ return this
+}
+/**
+ * Limit the total number of documents to get back from the server
+ */
+MongolianCursor.prototype.limit = function(limit) {
+ if (this._currentBatch) throw new Error("Query already executed")
+ this._limit = limit
+ return this
+}
+/**
+ * Number of documents of documents to skip before returning values (for paging)
+ */
+MongolianCursor.prototype.skip = function(skip) {
+ if (this._currentBatch) throw new Error("Query already executed")
+ this._skip = skip
+ return this
+}
+/**
+ * Specify sort using MongoDB's { "ascendingField": 1, "descendingField": -1 } format
+ * Shorthand for cursor._addSpecial("orderby", sort)
+ */
+MongolianCursor.prototype.sort = function(sort) {
+ return this.addSpecial("$orderby", sort)
+}
+
+/**
+ * Shorthand for cursor._addSpecial("$snapshot", true)
+ */
+MongolianCursor.prototype.snapshot = function() {
+ return this.addSpecial("$snapshot", true)
+}
+
+/**
+ * Shorthand for cursor._addSpecial("$explain", true)
+ */
+MongolianCursor.prototype.explain = function() {
+ return this.addSpecial("$explain", true)
+}
+
+/**
+ * Returns the next available batch, or null if there are no more
+ */
+MongolianCursor.prototype.nextBatch = function(callback) {
+ var self = this
+ if (self._currentIndex && self._currentIndex < self._currentBatch.documents.length) throw new Error("nextBatch cannot be mixed with next")
+ var filterBatch = safetyNet(callback, function(batch) {
+ self._retrieved += batch.numberReturned
+ if (batch.cursorId && batch.cursorId.isZero()) {
+ delete batch.cursorId
+ }
+ self._currentIndex = 0
+ self._currentBatch = batch
+ callback(null, batch)
+ })
+
+ if (!self._currentBatch) {
+ self.server.sendCommand(self._queryCommand(), filterBatch)
+ } else if (self._currentBatch.cursorId) {
+ var getMoreCommand = new mongo.GetMoreCommand(
+ self.collection.fullName,
+ self._getRetrieveCount(),
+ self._currentBatch.cursorId
+ )
+ self.server.sendCommand(getMoreCommand, filterBatch)
+ } else {
+ callback(null, null)
+ }
+}
+
+/**
+ * Returns the next available document, or undefined if there is none
+ */
+MongolianCursor.prototype.next = function(callback) {
+ var self = this
+ // We have a retrieved batch that hasn't been exhausted
+ if (self._currentBatch && self._currentIndex < self._currentBatch.documents.length) {
+ callback(null, self._currentBatch.documents[self._currentIndex++])
+ // We don't have a batch or the cursor hasn't been closed yet
+ } else if (!self._currentBatch || self._currentBatch.cursorId) {
+ self.nextBatch(safetyNet(callback,function() {
+ self.next(callback)
+ }))
+ // We have nothing left
+ } else {
+ callback(null)
+ }
+}
+
+/**
+ * Steps through every document in this cursor
+ */
+MongolianCursor.prototype.forEach = function(callback) {
+ if (this._retrieved) throw new Error("forEach must be called on an unused cursor or reset cursor")
+ var self = this
+ var handleNext = safetyNet(callback,function(object) {
+ callback(null, object)
+ if (object !== undefined) {
+ self.next(handleNext)
+ }
+ })
+ self.next(handleNext)
+}
+/**
+ * Combines all the documents from this cursor into a single array
+ */
+MongolianCursor.prototype.toArray = function(callback) {
+ if (this._retrieved) throw new Error("toArray must be called on an unused cursor or reset cursor")
+ var self = this
+ var array = []
+ var handleNext = safetyNet(callback,function(batch) {
+ if (batch) {
+ array.push.apply(array, batch.documents)
+ self.nextBatch(handleNext)
+ } else {
+ callback(null, array)
+ }
+ })
+ self.nextBatch(handleNext)
+}
+
+/**
+ * Returns the number of rows that match this criteria (regardless of any set skips or limits)
+ */
+MongolianCursor.prototype.count = function(callback) {
+ var self = this
+ var query = {
+ count: self.collection.name
+ }
+ if (self.criteria) {
+ query.query = self.criteria
+ }
+ self.db.queryCommand(query, safetyNet(callback, function (result) {
+ if (!result.ok) throw new Error(result)
+ callback(null, result.n)
+ }))
+}
+
+/**
+ * Returns the minimum of cursor.count() and any set limit
+ */
+MongolianCursor.prototype.size = function(callback) {
+ var self = this
+ this.count(!self._limit ? callback : safetyNet(callback, function(count) {
+ callback(null, Math.min(count, self._limit))
+ }))
+}
+
+//*////////////////////////////////////////////////////////////////////////////////*//
+//* Internal commands
+//*////////////////////////////////////////////////////////////////////////////////*//
+
+MongolianCursor.prototype._updateCursor = function(callback) {
+ var self = this
+ return safetyNet(callback, function(result) {
+ var cursor = self._cursor = {
+ index: 0,
+ documents: result.documents,
+ offset: result.startingFrom,
+ available: result.numberReturned
+ }
+ if (self._limit && cursor.offset + cursor.available > self._limit) {
+ cursor.available = self._limit - cursor.offset
+ cursor.documents = cursor.documents.slice(0, cursor.available)
+ }
+ if (result.cursorId && !result.cursorId.isZero) {
+ cursor.id = result.cursorId
+ }
+ callback(null, cursor)
+ })
+}
+
+MongolianCursor.prototype._getRetrieveCount = function() {
+ return this._limit ? Math.min(this._batchSize, this._limit - this._retrieved) : this._batchSize
+}
+
+MongolianCursor.prototype._queryCommand = function() {
+ var query = this._specials || this.criteria || {}
+ return new mongo.QueryCommand(
+ this.collection.fullName,
+ 0,
+ this._skip,
+ this._getRetrieveCount(),
+ query,
+ this.fields
+ )
+}
48 lib/db.js
@@ -0,0 +1,48 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+var safetyNet = require('./util').safetyNet,
+ MongolianCollection = require('./collection')
+
+var MongolianDB = module.exports = function(server, name) {
+ this.server = server
+ this.name = name
+ this._collections = {}
+}
+
+/**
+ * Get a collection
+ */
+MongolianDB.prototype.collection = function(name) {
+ return this._collections[name] ||
+ (this._collections[name] = new MongolianCollection(this, name))
+}
+
+/**
+ * Get list of collection names
+ */
+MongolianDB.prototype.collectionNames = function(callback) {
+ // Remove "dbname." from front
+ var prefixLength = this.name.length+1
+ this.collection("system.namespaces").find().toArray(safetyNet(callback, function(namespaces) {
+ callback(
+ null,
+ // Extract name from namespace object
+ namespaces.map(function(namespace) {
+ return namespace.name.substring(prefixLength)
+ // Filter out internal collections
+ }).filter(function (name) {
+ return !/\$/.test(name)
+ })
+ )
+ }))
+}
+
+/**
+ * Executes a command (equivalent to db.collection("$cmd").findOne(query, callback))
+ */
+MongolianDB.prototype.queryCommand = function(query, callback) {
+ this.collection('$cmd').findOne(query, callback)
+}
+
+MongolianDB.prototype.toString = function() {
+ return this.server + "/" + this.name
+}
96 lib/server.js
@@ -0,0 +1,96 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+var mongo = require('mongodb')
+
+var safetyNet = require('./util').safetyNet,
+ MongolianDB = require('./db')
+
+/**
+ * Constructs a new MongolianServer object
+ */
+var MongolianServer = module.exports = function(host, port) {
+ this.host = host || '127.0.0.1'
+ this.port = port || 27017
+ this._dbs = {}
+ this._callbacks = {}
+}
+/**
+ * Send an arbitrary command to the Mongo server
+ */
+MongolianServer.prototype.sendCommand = function(command, callback) {
+ var self = this
+ self._getConnection(safetyNet(callback,function(connection) {
+ self._callbacks[command.getRequestId()] = callback
+ connection.send(command)
+ }))
+}
+
+/**
+ * Get a list of databases on this server
+ */
+MongolianServer.prototype.dbNames = function(callback) {
+ this.db("admin").queryCommand({ listDatabases:1 }, safetyNet(callback, function(result) {
+ callback(null, result.databases.map(function(database) {
+ return database.name
+ }))
+ }))
+}
+
+/**
+ * Get a database
+ */
+MongolianServer.prototype.db = function(name) {
+ return this._dbs[name] ||
+ (this._dbs[name] = new MongolianDB(this, name))
+}
+
+MongolianServer.prototype.toString = function() {
+ return "mongo://" + this.host + ":" + this.port
+}
+
+
+//*////////////////////////////////////////////////////////////////////////////////*//
+//* Internal commands
+//*////////////////////////////////////////////////////////////////////////////////*//
+
+/**
+ * Get raw connection to server
+ */
+MongolianServer.prototype._getConnection = function(callback) {
+ var self = this;
+ if (self._connection) {
+ callback(null, self._connection)
+ } else if (self.connectionCallbacks) {
+ self.connectionCallbacks.push(callback)
+ } else {
+ self.connectionCallbacks = [callback]
+ console.log("Connecting to " + self)
+ var connection = new mongo.Connection(self.host, self.port)
+ connection.on('error', function(error) {
+ console.warn("Connection error on "+self, error.stack)
+ delete self._connection
+ })
+ connection.on('close', function(error) {
+ console.warn("Connection closed on "+self)
+ delete self._connection
+ })
+ connection.on('connect',function(err) {
+ if (err) {
+ console.warn("Error connecting to " + self, error.stack)
+ } else {
+ console.log("Connected to " + self)
+ self._connection = connection
+ self.connectionCallbacks.forEach(function(callback) { callback(null, connection) })
+ delete self.connectionCallbacks
+ }
+ })
+ connection.on("data", function(message) {
+ var reply = new mongo.MongoReply(message)
+ var requestId = reply.responseTo;
+ if (self._callbacks[requestId]) {
+ self._callbacks[requestId](null,reply)
+ delete self._callbacks[requestId]
+ }
+ })
+ connection.open()
+ }
+}
22 lib/util.js
@@ -0,0 +1,22 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+
+/**
+ * Convenience method for handling async value callbacks
+ *
+ * @param callback the target async callback
+ * @param body the body to call
+ * @returns an async function(err,value)
+ */
+exports.safetyNet = function(callback,body) {
+ return function(err) {
+ if (err) {
+ callback(err)
+ } else {
+ try {
+ body.apply(this, Array.prototype.slice.call(arguments,1))
+ } catch (ex) {
+ callback(ex)
+ }
+ }
+ }
+}
2  mongolian.js
@@ -0,0 +1,2 @@
+/* Mongolian DeadBeef by Marcello Bastea-Forte - zlib license */
+module.exports = require('./lib/server')
19 package.json
@@ -0,0 +1,19 @@
+{
+ "name": "mongolian",
+ "description": "Mongolian DeadBeef is a Mongo DB driver for node.js",
+ "version": "0.1.0",
+ "homepage": "https://github.com/marcello3d/node-mongolian",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/marcello3d/node-mongolian.git"
+ },
+ "author": "Marcello Bastéa-Forte <marcello@cellosoft.com> (http://marcello.cellosoft.com/)",
+ "main": "mongolian.js",
+ "keywords": ["mongo", "mongodb", "database", "db", "nosql"],
+ "dependencies": {
+ "mongodb": ">=0.7.9"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+}
Please sign in to comment.
Something went wrong with that request. Please try again.