Просмотр исходного кода

Merge pull request #335 from weseek/master

release v3.0.3
Yuki Takei 8 лет назад
Родитель
Сommit
94a8375d74

+ 18 - 3
CHANGES.md

@@ -1,12 +1,23 @@
 CHANGES
 ========
 
-## 3.0.0-RC
+## 3.0.3-RC
+
+* Fix: Login page is broken in iOS
+* Fix: Hide presentation tab if portal page
+* Fix: A few checkboxes doesn't work
+    * Invite user check with email in `/admin/user`
+    * Recursively check in rename modal
+    * Redirect check in rename modal
+* Fix: Activating invited user form url is wrong
+* Support: Use postcss-loader and autoprefixer
+
+## 3.0.2
 
 * Feature: Group Access Control List
-* Feature: Add theme selector
-* Feature: Custom title tag content
+* Feature: Add site theme selector
 * Feature: Add a control to switch whether email shown or hidden by user
+* Feature: Custom title tag content
 * Fix: bosai version
 * Support: Rename to GROWI
 * Support: Add dark theme
@@ -17,6 +28,10 @@ CHANGES
     * react-bootstrap-typeahead
     * react-clipboard.js
 
+## 3.0.1 (Missing number)
+
+## 3.0.0 (Missing number)
+
 ## 2.4.4
 
 * Feature: Autoformat Markdown Table

+ 13 - 3
README.md

@@ -1,11 +1,8 @@
-# Sorry, GROWI v3.0.0 - v3.0.1 has been broken. Please wait v3.0.2 that is under constructing.
-
 <p align="center">
   <a href="https://growi.org">
     <img src="https://user-images.githubusercontent.com/1638767/38254268-d4476bbe-3793-11e8-964c-8865d690baff.png" width="240px">
   </a>
 </p>
-
 <p align="center">
   <a href="https://github.com/weseek/crowi-plus/releases/latest"><img src="https://img.shields.io/github/release/weseek/crowi-plus.svg"></a>
   <a href="https://growi-slackin.weseek.co.jp/"><img src="https://crowi-plus-slackin.weseek.co.jp/badge.svg"></a>
@@ -18,6 +15,7 @@
   <a href="https://heroku.com/deploy"><img src="https://www.herokucdn.com/deploy/button.png"></a>
 </p>
 
+
 GROWI 
 ===========
 
@@ -26,6 +24,18 @@ GROWI
 [![devDependencies Status](https://david-dm.org/weseek/growi/dev-status.svg)](https://david-dm.org/weseek/growi?type=dev)
 [![docker pulls](https://img.shields.io/docker/pulls/weseek/growi.svg)](https://hub.docker.com/r/weseek/growi/)
 
+- [Features](#features)
+- [Quick Start for Production](#quick-start-for-production)
+    - [On-premise](#on-premise)
+    - [Using Heroku](#using-heroku)
+    - [Using docker-compose](#using-docker-compose)
+- [Environment Variables](#environment-variables)
+- [Documentation](#documentation)
+- [License](#license)
+
+
+Features
+========
 
 * **Pluggable**
   * You can find plugins from [npm](https://www.npmjs.com/browse/keyword/growi-plugin) or [github](https://github.com/search?q=topic%3Agrowi-plugin)!

+ 10 - 1
config/webpack.common.js

@@ -60,7 +60,16 @@ module.exports = function (options) {
           use: ExtractTextPlugin.extract({
             fallback: 'style-loader',
             use: [
-              { loader: 'css-loader', options: { minimize: isProd, sourceMap: !isProd } },
+              { loader: 'css-loader', options: {
+                sourceMap: !isProd,
+                minimize: isProd
+              } },
+              { loader: 'postcss-loader', options: {
+                sourceMap: !isProd,
+                plugins: (loader) => [
+                  require('autoprefixer')()
+                ]
+              } },
               { loader: 'sass-loader', options: { sourceMap: !isProd } }
             ]
           }),

+ 3 - 4
lib/views/admin/users.html

@@ -47,10 +47,9 @@
             <label for="inviteForm[emailList]">メールアドレス (複数行入力で複数人招待可能)</label>
             <textarea class="form-control" name="inviteForm[emailList]" placeholder="例: user@crowi.wiki"></textarea>
           </div>
-          <div class="checkbox">
-            <label>
-              <input type="checkbox" name="inviteForm[sendEmail]" checked> 招待をメールで送信
-            </label>
+          <div class="checkbox checkbox-info">
+            <input type="checkbox" id="inviteWithEmail" name="inviteForm[sendEmail]" checked>
+            <label for="inviteWithEmail">招待をメールで送信</label>
           </div>
           <button type="submit" class="btn btn-primary">招待する</button>
         </div>

+ 1 - 1
lib/views/invited.html

@@ -56,7 +56,7 @@
         <small>招待を受け取ったメールアドレスでアカウントを作成します</small>
       </p>
 
-      <form role="form" action="/installer/activateInvited" method="post" id="invited-form">
+      <form role="form" action="/login/activateInvited" method="post" id="invited-form">
 
         <div class="input-group">
           <span class="input-group-addon"><i class="icon-envelope"></i></span>

+ 6 - 8
lib/views/modal/rename.html

@@ -20,17 +20,15 @@
                 <input type="text" class="form-control" name="new_path" id="newPageName" value="{{ page.path }}">
               </div>
             </div>
-            <div class="checkbox">
-              <label>
-                <input name="move_recursively" value="1" type="checkbox" checked> {{ t('modal_rename.label.Move recursively') }}
-              </label>
+            <div class="checkbox checkbox-info">
+              <input name="move_recursively" id="cbRecursively" value="1" type="checkbox" checked>
+              <label for="cbRecursively">{{ t('modal_rename.label.Move recursively') }}</label>
               <p class="help-block"> {{ t('modal_rename.help.recursive', page.path) }}
               </p>
             </div>
-            <div class="checkbox">
-               <label>
-                 <input name="create_redirect" value="1"  type="checkbox"> {{ t('modal_rename.label.Redirect') }}
-               </label>
+            <div class="checkbox checkbox-info">
+              <input name="create_redirect" id="cbRedirect" value="1"  type="checkbox">
+               <label for="cbRedirect">{{ t('modal_rename.label.Redirect') }}</label>
                <p class="help-block"> {{ t('modal_rename.help.redirect', page.path) }}
                </p>
             </div>

+ 3 - 1
lib/views/widget/page_tabs.html

@@ -50,7 +50,9 @@
   {% endif %}
 
   <li class="nav-main-right-tab pull-right"><a href="#revision-history" data-toggle="tab"><i class="icon-layers"></i> History</a></li>
-  <li class="nav-main-right-tab pull-right"><a href="?presentation=1" class="toggle-presentation"><i class="icon-film"></i> {{ t('Presentation Mode') }}</a></li>
+  {% if not isPortal %}
+    <li class="nav-main-right-tab pull-right"><a href="?presentation=1" class="toggle-presentation"><i class="icon-film"></i> {{ t('Presentation Mode') }}</a></li>
+  {% endif %}
 
 </ul>
 

+ 3 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "growi",
-  "version": "3.0.2-RC",
+  "version": "3.0.3-RC",
   "description": "Team collaboration software using markdown",
   "tags": [
     "wiki",
@@ -50,6 +50,7 @@
     "@slack/client": "^3.14.0",
     "assets-webpack-plugin": "~3.5.1",
     "async": "^2.3.0",
+    "autoprefixer": "^8.2.0",
     "aws-sdk": "^2.88.0",
     "axios": "^0.18.0",
     "babel-core": "^6.25.0",
@@ -124,6 +125,7 @@
     "passport-local": "^1.0.0",
     "pino-clf": "^1.0.2",
     "plantuml-encoder": "^1.2.5",
+    "postcss-loader": "^2.1.3",
     "react": "^16.2.0",
     "react-bootstrap": "^0.32.1",
     "react-bootstrap-typeahead": "^2.6.0",

+ 5 - 5
resource/js/components/Common/Modal.js

@@ -38,11 +38,11 @@ export default class Modal extends React.Component {
                   </div>
                 </div>
                 <div class="checkbox">
-                   <label>
-                     <input name="create_redirect" value="1" type="checkbox"> Redirect
-                   </label>
-                   <p class="help-block"> Redirect to new page if someone accesses <code>/user/sotarok/memo/2017/04/24</code>
-                   </p>
+                  <input name="create_redirect" id="cbRedirect" value="1" type="checkbox">
+                  <label for="cbRedirect">Redirect</label>
+                  <p class="help-block">
+                  Redirect to new page if someone accesses <code>/user/sotarok/memo/2017/04/24</code>
+                  </p>
                 </div>
 
 

+ 1 - 1
resource/styles/agile-admin/inverse/widgets.scss

@@ -2216,7 +2216,7 @@ position:relative;
 .fcbtn:after {
   content: '';
   position: absolute;
-  z-index:-1;
+  z-index: -1;
   -webkit-transition: all 0.3s;
   -moz-transition: all 0.3s;
   transition: all 0.3s;

+ 0 - 1
resource/styles/scss/_layout.scss

@@ -27,7 +27,6 @@
 
   .layout-control { // {{{
     transition: .3s ease;
-    -webkit-transition: .3s ease;
     position: fixed;
     display: block;
     text-align: center;

+ 6 - 0
resource/styles/scss/_login.scss

@@ -218,6 +218,12 @@
     .back,
     &.to-flip .front {
       transform: rotateY(180deg);
+
+      // fix https://github.com/weseek/growi/issues/330
+      // 'backface-visibility: hidden' and 'z-index: -1' breaks layout in iOS
+      .fcbtn:after {
+        z-index: 0;
+      }
     }
     &.to-flip .back {
       transform: rotateY(0deg);

+ 0 - 4
resource/styles/scss/_page.scss

@@ -154,8 +154,6 @@
   background: rgba(0, 0, 0, .5);
   z-index: 9999;
   opacity: 0;
-  -webkit-transition: opacity .3s ease-out;
-  -moz-transition: opacity .3s ease-out;
   transition: opacity .3s ease-out;
 
   & > * {
@@ -164,8 +162,6 @@
 }
 .overlay-on {
   #wrapper {
-    -webkit-filter: blur(5px);
-    -moz-filter: blur(5px);
     filter: blur(5px);
   }
 

+ 96 - 3
yarn.lock

@@ -417,6 +417,17 @@ autoprefixer@^6.3.1:
     postcss "^5.2.16"
     postcss-value-parser "^3.2.3"
 
+autoprefixer@^8.2.0:
+  version "8.2.0"
+  resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.2.0.tgz#1e49b611b31a5259b86b7a6b2b1b8faf091abe2a"
+  dependencies:
+    browserslist "^3.2.0"
+    caniuse-lite "^1.0.30000817"
+    normalize-range "^0.1.2"
+    num2fraction "^1.2.2"
+    postcss "^6.0.20"
+    postcss-value-parser "^3.2.3"
+
 aws-sdk@^2.2.36, aws-sdk@^2.88.0:
   version "2.179.0"
   resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.179.0.tgz#48e07843c6ae83d6752e58547b168299f140cc11"
@@ -1295,6 +1306,13 @@ browserslist@^2.1.2:
     caniuse-lite "^1.0.30000784"
     electron-to-chromium "^1.3.30"
 
+browserslist@^3.2.0:
+  version "3.2.4"
+  resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.4.tgz#fb9ad70fd09875137ae943a31ab815ed76896031"
+  dependencies:
+    caniuse-lite "^1.0.30000821"
+    electron-to-chromium "^1.3.41"
+
 bs-recipes@1.3.4:
   version "1.3.4"
   resolved "https://registry.yarnpkg.com/bs-recipes/-/bs-recipes-1.3.4.tgz#0d2d4d48a718c8c044769fdc4f89592dc8b69585"
@@ -1401,6 +1419,10 @@ caniuse-lite@^1.0.30000784:
   version "1.0.30000789"
   resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000789.tgz#2e3d937b267133f63635ef7f441fac66360fc889"
 
+caniuse-lite@^1.0.30000817, caniuse-lite@^1.0.30000821:
+  version "1.0.30000824"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000824.tgz#de3bc1ba0bff4937302f8cb2a8632a8cc1c07f9a"
+
 cardinal@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-1.0.0.tgz#50e21c1b0aa37729f9377def196b5a9cec932ee9"
@@ -1448,7 +1470,7 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
     strip-ansi "^3.0.0"
     supports-color "^2.0.0"
 
-chalk@^2.0.0, chalk@^2.1.0:
+chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.2:
   version "2.3.2"
   resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.2.tgz#250dc96b07491bfd601e648d66ddf5f60c7a5c65"
   dependencies:
@@ -1810,6 +1832,18 @@ core-util-is@1.0.2, core-util-is@~1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
 
+cosmiconfig@^2.1.0, cosmiconfig@^2.1.1:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892"
+  dependencies:
+    is-directory "^0.3.1"
+    js-yaml "^3.4.3"
+    minimist "^1.2.0"
+    object-assign "^4.1.0"
+    os-homedir "^1.0.1"
+    parse-json "^2.2.0"
+    require-from-string "^1.1.0"
+
 crc@3.4.4:
   version "3.4.4"
   resolved "https://registry.yarnpkg.com/crc/-/crc-3.4.4.tgz#9da1e980e3bd44fc5c93bf5ab3da3378d85e466b"
@@ -2273,6 +2307,10 @@ electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30:
   dependencies:
     electron-releases "^2.1.0"
 
+electron-to-chromium@^1.3.41:
+  version "1.3.42"
+  resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.42.tgz#95c33bf01d0cc405556aec899fe61fd4d76ea0f9"
+
 elliptic@^6.0.0:
   version "6.4.0"
   resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df"
@@ -3573,6 +3611,10 @@ is-date-object@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
 
+is-directory@^0.3.1:
+  version "0.3.1"
+  resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
+
 is-dotfile@^1.0.0:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"
@@ -3804,7 +3846,7 @@ js-yaml@3.5.4:
     argparse "^1.0.2"
     esprima "^2.6.0"
 
-js-yaml@^3.9.1:
+js-yaml@^3.4.3, js-yaml@^3.9.1:
   version "3.11.0"
   resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef"
   dependencies:
@@ -5105,7 +5147,7 @@ os-browserify@^0.3.0:
   version "0.3.0"
   resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
 
-os-homedir@^1.0.0:
+os-homedir@^1.0.0, os-homedir@^1.0.1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
 
@@ -5474,6 +5516,38 @@ postcss-filter-plugins@^2.0.0:
     postcss "^5.0.4"
     uniqid "^4.0.0"
 
+postcss-load-config@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a"
+  dependencies:
+    cosmiconfig "^2.1.0"
+    object-assign "^4.1.0"
+    postcss-load-options "^1.2.0"
+    postcss-load-plugins "^2.3.0"
+
+postcss-load-options@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c"
+  dependencies:
+    cosmiconfig "^2.1.0"
+    object-assign "^4.1.0"
+
+postcss-load-plugins@^2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92"
+  dependencies:
+    cosmiconfig "^2.1.1"
+    object-assign "^4.1.0"
+
+postcss-loader@^2.1.3:
+  version "2.1.3"
+  resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.3.tgz#eb210da734e475a244f76ccd61f9860f5bb3ee09"
+  dependencies:
+    loader-utils "^1.1.0"
+    postcss "^6.0.0"
+    postcss-load-config "^1.2.0"
+    schema-utils "^0.4.0"
+
 postcss-merge-idents@^2.1.5:
   version "2.1.7"
   resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270"
@@ -5651,6 +5725,14 @@ postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0
     source-map "^0.5.6"
     supports-color "^3.2.3"
 
+postcss@^6.0.0, postcss@^6.0.20:
+  version "6.0.21"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.21.tgz#8265662694eddf9e9a5960db6da33c39e4cd069d"
+  dependencies:
+    chalk "^2.3.2"
+    source-map "^0.6.1"
+    supports-color "^5.3.0"
+
 postcss@^6.0.1:
   version "6.0.16"
   resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.16.tgz#112e2fe2a6d2109be0957687243170ea5589e146"
@@ -6239,6 +6321,10 @@ require-directory@^2.1.1:
   version "2.1.1"
   resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
 
+require-from-string@^1.1.0:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418"
+
 require-main-filename@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
@@ -6407,6 +6493,13 @@ schema-utils@^0.3.0:
   dependencies:
     ajv "^5.0.0"
 
+schema-utils@^0.4.0:
+  version "0.4.5"
+  resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e"
+  dependencies:
+    ajv "^6.1.0"
+    ajv-keywords "^3.1.0"
+
 schema-utils@^0.4.3:
   version "0.4.3"
   resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.3.tgz#e2a594d3395834d5e15da22b48be13517859458e"