ブランチ

feat/enhanced-link-edit-modal-for-master-merge

準備

growi-plugin-pukiwiki-like-linker external_link をインストールする

$ yarn add growi-plugin-pukiwiki-like-linker

管理画面ホームにて、プラグイン一覧に追加されていることを確認

動作確認項目

リンクの作成

  • ページ編集画面にて、EditNavBar(太字とか、テーブル挿入とかできるツールバー)のリンクマーク🔗からリンク編集モーダルを表示する
  • リンク編集モーダルにてlinkとlabelを適当に入力し、markdown, growi original, pukiwiki それぞれの形式でリンクを作成できることを確認
    • linkは以下の両方を試す(Growi originalの場合はページパスのみ有効)
      • 適当な外部サイトへのURL (https://~)
      • ページパス (/user/hoge/memo)
    • growi originalの場合はlabelは指定できない
    • pukiwikiの場合、以下の2パターンを試す
      • link == labelの時、[[link]] が作成される
      • link != labelの時、[[label>link]] が作成される
    • チェックボックスはどちらもoffのままにしておく
    • 作成したリンクによりpreview内に生成された a タブから、linkで指定した遷移先に飛ぶことができることを確認
  • ページプレビューが表示されている時のみ「パーマリンクを利用」のチェックボックスが切り替え可能になることを確認
    • チェックボックスをon にしてリンクを作成するとlinkがパーマリンクに変換されたリンカーが作成されることを確認
    • 作成されたaタグから、linkで指定したページにアクセスできることを確認
  • link がページパスの時のみ「相対パスを利用」のチェックボックスが切り替え可能になることを確認
    • チェックボックスをon にしてリンクを作成するとlinkのページパスが相対パスに変換されたリンカーが作成されることを確認
    • 作成されたaタグから、linkで指定したページにアクセスできることを確認
    • リンク形式による相対パスの起点の違いがあるので各リンク形式で要チェック()

選択中の文字列がラベルに反映される

  • エディターないの文字列を選択している状態でモーダルを開くと選択中テキストがlabelに反映されることを確認
  • リンクを作成した場合、選択したテキストがリンクに置き換わることを確認

リンク先ページのプレビュー表示

  • リンク編集モーダルのlinkをページパスにするとそのページのプレビューが表示されることを確認

既存リンクの編集

バグがある可能性が高いのでできるだけいろいろなシチュエーションを試して欲しいです

  • エディタないのリンクに入力カーソルが当たっている状態でモーダルを開くと以下の値にそのリンクの値が反映されていることを確認
    • link
    • label
    • リンク形式
    • 相対パスを使っているかどうか
    • (相対パスを使っている場合)linkが正しい絶対パスに変換されている
  • リンク編集後、既存のリンクが更新後のリンクに置き換わっていることを確認

pukiwikiリンカープラグインがない場合

  • プラグインをアンインストール
  • 再度リンク編集モーダルを開き、リンク形式の選択肢にpukiwikiがないことを確認
  • [[label>http://example.com]] , [[http://example.com]] のようなpukiwiki linker をエディタないに記述し、そこに入力カーソルが当たっている状態でモーダルを開くと、label、link等はpukiwiki形式リンクとして読み取った値が反映され、リンク形式にはmarkdown が選択されていることを確認する

相対パスの起点の違い

以下だと Pukiwiki Like Link にバグが生じる

以下だと Markdown Link にバグが生じる