diff --git "a/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\216\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" "b/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\216\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" index b4def8115..8899214f5 100644 Binary files "a/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\216\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" and "b/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\216\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" differ diff --git "a/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\225\343\202\251\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" "b/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\225\343\202\251\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" index 227fab61f..a6f531dcd 100644 Binary files "a/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\225\343\202\251\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" and "b/content/articles/communication/capture/images/service_capture/SmartHR\343\201\256\343\203\233\343\203\274\343\203\240_\343\203\225\343\202\251\343\203\274\343\203\236\343\203\253_\343\203\221\343\202\275\343\202\263\343\203\263\343\202\265\343\202\244\343\202\272.png" differ diff --git a/content/articles/products/components/check-box.mdx b/content/articles/products/components/check-box.mdx deleted file mode 100644 index 8d05356fd..000000000 --- a/content/articles/products/components/check-box.mdx +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: 'CheckBox' -description: "input[type='checkbox']要素の代わりに使用するコンポーネントです。" ---- -import { ComponentStory } from '@Components/ComponentStory' -import { ComponentPropsTable } from '@Components/ComponentPropsTable' - -`input[type="checkbox"]`の代わりに使用するコンポーネントです。見た目をやや大きく変えているだけでほぼ機能に変わりありません。 - - - -## Props - - - - diff --git a/content/articles/products/components/check-box/images/check-box-confirm.png b/content/articles/products/components/check-box/images/check-box-confirm.png new file mode 100644 index 000000000..c35746467 Binary files /dev/null and b/content/articles/products/components/check-box/images/check-box-confirm.png differ diff --git a/content/articles/products/components/check-box/images/check-box-do.png b/content/articles/products/components/check-box/images/check-box-do.png new file mode 100644 index 000000000..9c89bb2f3 Binary files /dev/null and b/content/articles/products/components/check-box/images/check-box-do.png differ diff --git a/content/articles/products/components/check-box/images/check-box-dont.png b/content/articles/products/components/check-box/images/check-box-dont.png new file mode 100644 index 000000000..dac1ecd7d Binary files /dev/null and b/content/articles/products/components/check-box/images/check-box-dont.png differ diff --git a/content/articles/products/components/check-box/images/check-box-mixed.png b/content/articles/products/components/check-box/images/check-box-mixed.png new file mode 100644 index 000000000..25970c799 Binary files /dev/null and b/content/articles/products/components/check-box/images/check-box-mixed.png differ diff --git a/content/articles/products/components/check-box/images/check-box1.png b/content/articles/products/components/check-box/images/check-box1.png new file mode 100644 index 000000000..39092749a Binary files /dev/null and b/content/articles/products/components/check-box/images/check-box1.png differ diff --git a/content/articles/products/components/check-box/index.mdx b/content/articles/products/components/check-box/index.mdx new file mode 100644 index 000000000..9b86e10ad --- /dev/null +++ b/content/articles/products/components/check-box/index.mdx @@ -0,0 +1,79 @@ +--- +title: 'CheckBox' +description: "ユーザーに「true/false」といった正反対の状態を入力させるコンポーネントです。" +--- +import { ComponentStory } from '@Components/ComponentStory' +import { ComponentPropsTable } from '@Components/ComponentPropsTable' +import { DoAndDont } from '@Components/DoAndDont' +import { StaticImage } from '@Components/StaticImage' +import { Cluster} from 'smarthr-ui' + +import checkBoxDo from './images/check-box-do.png'; +import checkBoxDont from './images/check-box-dont.png'; + +ユーザーに「true/false」といった正反対の状態を入力させるコンポーネントです。 +`input[type='checkbox']`の代わりとして使用します。 + + + +## 使用上の注意 + +### 選択肢が複数選択できる場合に使用する + +チェックボックスは選択肢を複数選択できる場合に使用します。 + +- 複数の選択肢から単一選択しかできず、表示領域に余裕がある場合は原則として[RadioButton](/products/components/radio-button/)を検討してください。 +- 選択肢が多い場合や表示領域が狭い場合は、[Select](/products/components/select/)や[ComboBox](/products/components/combo-box/)を検討してください。 + +![複数項目をチェックボックスで選択している状態](/images/check-box1.png) + + +### 「ON/OFF」といった2択の切り替え入力に使用しない + +チェックボックスは、「ON/OFF」「有効/無効」「はい/いいえ」といった2択の切り替え入力には原則として使用しないでください。 + +「ON/OFF」などのブール値で制御できる項目にチェックボックスを使用した場合、一方の選択肢が暗黙的になりチェック状態から現在の選択状態が認識しづらくなる場合があります。 +こうした場合には、選択肢を明示的に表示できる[RadioButton](/products/components/radio-button/)を使用してください。 + + + } + label={すべての選択肢が明示的に表示されてい
るため、現在の状態が把握しやすい
} + /> + } + label={「無効」という選択肢が暗黙的であり、
現在の状態をラベルとチェック状態から
推測しなければならない
} + /> +
+ +例外として、以下のようにユーザーに操作内容の確認を促す手段としてチェックボックスを単独で使用することがあります。 + +- 利用規約などユーザーに許諾を得る必要がある内容の確認を促す場合 +- [削除ダイアログ](/products/design-patterns/delete-dialog/#h3-5)など、重要な操作を行なう場合でユーザーに注意事項の確認を促す場合 + +![削除ダイアログで操作の確認を促す際のチェックボックスの使用例](/images/check-box-confirm.png) + +### submitなしに即時反映するUIとして使用しない + +チェックボックスは1クリックで状態が正反対の結果になるため、誤入力による意図しない結果の反映を避けるために、原則として入力後に「送信」や「保存」といったtype属性が`submit`のボタンによって入力確定するフォーム画面などで使用してください。 + +よくあるテーブルで「表示/非表示」を切り替える場合や、表示領域上`submit`のボタンの配置が難しい場合など、即時反映を前提とする箇所では[Switch](/products/components/switch/)を使用してください。 + +## 状態 + +### 混在(mixed) + +[テーブル内の一括操作](/products/design-patterns/table-bulk-action/)の「一括選択するチェックボックス」など、複数のチェックボックスの状態をまとめて示す必要があるチェックボックスにおいて、選択状態と未選択状態が混ざっている状態を示す場合には、混在選択状態(`mixed=true`)を採用します。 + +![よくあるテーブルでの混在状態のチェックボックスの使用例](/images/check-box-mixed.png) + +## デザインパターン + +設定画面によくある複数の設定項目でチェックボックスを整列して表示する場合などは、[共通設定の操作権限項目](/products/design-patterns-core-features/access-control-setting-pattern/)のデザインパターンを参考にしてください。 + +## Props + + + diff --git a/content/articles/products/components/compact-information-panel.mdx b/content/articles/products/components/compact-information-panel.mdx index dff48271e..8dedffb03 100644 --- a/content/articles/products/components/compact-information-panel.mdx +++ b/content/articles/products/components/compact-information-panel.mdx @@ -1,9 +1,23 @@ --- -title: 'CompactInformationPanel' -description: '' +title: 'CompactInformationPanel(非推奨)' +description: "ユーザーに情報を伝えるために、他の要素より視覚的に目立たせるためのInformationPanelよりもコンパクトなコンポーネントです。NotificationBar[base='base']で代替が可能になったため非推奨です。" --- import { ComponentStory } from '@Components/ComponentStory' import { ComponentPropsTable } from '@Components/ComponentPropsTable' +import { BaseColumn, WarningIcon } from 'smarthr-ui' + + + + CompactInformationPanelは非推奨です。NotificationBar[base="base"]を利用してください。 + } + /> + + +ユーザーに情報を伝えるために、他の要素より視覚的に目立たせるための[InformationPanel](/products/components/information-panel/)よりもコンパクトなコンポーネントです。 +InformationPanelとは異なり、パネルを閉じることはできません。 + +伝えたい情報の種類によってアイコンを切り替えて使います。 diff --git a/content/articles/products/components/field-set.mdx b/content/articles/products/components/field-set.mdx deleted file mode 100644 index 85495abaf..000000000 --- a/content/articles/products/components/field-set.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: 'FieldSet(非推奨)' -description: 'FieldSetコンポーネントは非推奨です。Fieldsetコンポーネントを使用してください。' ---- -import { ComponentPropsTable } from '@Components/ComponentPropsTable' -import { ComponentStory } from '@Components/ComponentStory' -import { BaseColumn, WarningIcon } from 'smarthr-ui' - - - - FieldSetコンポーネントは非推奨です。Fieldsetコンポーネントを使用してください。 - } - /> - - - - -## Props - - - - diff --git a/content/articles/products/components/form-group.mdx b/content/articles/products/components/form-group.mdx deleted file mode 100644 index 177b3c175..000000000 --- a/content/articles/products/components/form-group.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: 'FormGroup(非推奨)' -description: 'FormGroupコンポーネントは非推奨です。FormControlかFieldsetコンポーネントを使用してください。' ---- -import { ComponentPropsTable } from '@Components/ComponentPropsTable' -import { ComponentStory } from '@Components/ComponentStory' -import { BaseColumn, WarningIcon } from 'smarthr-ui' - - - - FormGroupコンポーネントは非推奨です。FormControlFieldsetコンポーネントを使用してください。 - } - /> - - - - -## Props - - - - diff --git a/content/articles/products/components/notification-bar.mdx b/content/articles/products/components/notification-bar.mdx index b01c76f14..4f9d4ade9 100644 --- a/content/articles/products/components/notification-bar.mdx +++ b/content/articles/products/components/notification-bar.mdx @@ -19,7 +19,7 @@ NotificationBarコンポーネントは、フィードバックやメッセー ## 種類 -メッセージで伝えたいことや、メッセージの重要度に合わせて4種類を定義しています。 +メッセージで伝えたいことや、メッセージの重要度に合わせて5種類を定義しています。 ```tsx editable codeBlock @@ -27,6 +27,7 @@ NotificationBarコンポーネントは、フィードバックやメッセー + ``` @@ -34,19 +35,19 @@ NotificationBarコンポーネントは、フィードバックやメッセー ### 強調 -ユーザーへのアテンションを高めたい場合は、`bold={true}`にすることを検討します。 +ユーザーへのアテンションを高めたい場合は、`bold`にすることを検討します。 ```tsx editable codeBlock - {}} /> - {}} /> - {}} /> + {}} /> + {}} /> + {}} /> ``` ### アニメーション -メッセージが表示されたことを強調したい場合は、`animate={true}`にすることでスライドインのアニメーション効果を追加できます。 +メッセージが表示されたことを強調したい場合は、`animate`にすることでスライドインのアニメーション効果を追加できます。 export const AnimateNotificationBar = () => { @@ -56,9 +57,9 @@ export const AnimateNotificationBar = () => { {visible && ( setVisible(!visible)} /> )} @@ -143,7 +144,7 @@ export const AnimateNotificationBar = () => { #### アプリケーション全体にメッセージを表示する アプリケーション全体にメッセージを表示している例です。 -アプリケーション内で画面を切り替えてもメッセージが表示され続けることを表すため、[Header](/products/components/header/)よりも上に配置します。また、必ず見てもらいたいメッセージなので`bold={true}`にしています。 +アプリケーション内で画面を切り替えてもメッセージが表示され続けることを表すため、[Header](/products/components/header/)よりも上に配置します。また、必ず見てもらいたいメッセージなので`bold`にしています。 ![NotificationBarを使ってアプリケーション全体へメッセージを表示している例](./images/notification-bar-static1.png) diff --git a/content/articles/products/components/page-counter.mdx b/content/articles/products/components/page-counter.mdx index 6ebbfb64d..ae2ba2df5 100644 --- a/content/articles/products/components/page-counter.mdx +++ b/content/articles/products/components/page-counter.mdx @@ -1,10 +1,12 @@ --- title: 'PageCounter' -description: '' +description: '主に「よくあるテーブル」などコレクションの全件数と選択されている現在のページの件数を表示するためのコンポーネントです。' --- import { ComponentPropsTable } from '@Components/ComponentPropsTable' import { ComponentStory } from '@Components/ComponentStory' +主に[よくあるテーブル](/products/design-patterns/smarthr-table)などコレクションの全件数と選択されている現在のページの件数を表示するためのコンポーネントです。 + ## Props diff --git a/content/articles/products/components/select.mdx b/content/articles/products/components/select.mdx index e1ac92e55..f8a93aa46 100644 --- a/content/articles/products/components/select.mdx +++ b/content/articles/products/components/select.mdx @@ -9,6 +9,27 @@ import { ComponentStory } from '@Components/ComponentStory' +## 使用上の注意 + +### 選択肢が6個以上の場合に使用する + +基本的に選択肢の数が6個以上になる場合はSelectを使用します。初期状態では選択肢を一覧できないことに注意してください。 + +ユーザーがスムーズに操作できるよう、選択肢の数に応じてSelectコンポーネント以外の使用も考えられます。 + +#### 選択肢が5個以下の場合 + +一般的に人は4±1個の情報のまとまりまでしか短期的に記憶できないと言われています。選択肢が5個以下であれば、初期状態で選択肢が一覧できる[RadioButton](/products/components/radio-button/)の使用を推奨します。 +ただし、RadioButtonで配置するスペースがない場合はSelectも使用可能です。 + +#### 選択肢の数が不定の場合 + +ユーザーの設定や条件によって選択肢の数が増減するなど、実装時に数を固定できない場合は、想定される最大数を考慮して使用するコンポーネントを判断してください。 + +### ComboBoxとの使い分け + +単一選択かつ、ユーザーに選択肢をフィルタリングさせたい場合は[ComboBox](/products/components/combo-box/)の使用を検討してください。 + ## Props diff --git a/content/articles/products/contents/error-messages.mdx b/content/articles/products/contents/error-messages.mdx index a6862464b..1740547e0 100644 --- a/content/articles/products/contents/error-messages.mdx +++ b/content/articles/products/contents/error-messages.mdx @@ -4,8 +4,6 @@ description: 'SmartHRアプリケーション内で表示されるエラーメ order: 5 --- -import { AirtableEmbed } from '@Components/article/AirtableEmbed/AirtableEmbed' - アプリケーション内に表示するエラーメッセージの作成に関するガイドラインです。 エラーメッセージのライティングは、基本的に[ライティングスタイル](../writing-style/)、[用字用語](../idiomatic-usage/data/)に準拠します。 @@ -86,14 +84,10 @@ import { AirtableEmbed } from '@Components/article/AirtableEmbed/AirtableEmbed' 例:PDFを一括でアップロードする ##### 1. CSVを取り込むことで、目的の操作をする場合 - - - + ##### 2. 目的となる操作とユーザーが実行する操作が一致している場合 - - - + ### FlashMessage * [FlashMessage](https://smarthr.design/products/components/flash-message/)で伝える要素は、**原因**または**原因・対処**です。 @@ -113,6 +107,4 @@ import { AirtableEmbed } from '@Components/article/AirtableEmbed/AirtableEmbed' #### ライティングパターン - - - + diff --git a/content/articles/products/contents/writing-principles.mdx b/content/articles/products/contents/writing-principles.mdx index ec7a52b5e..671ba60eb 100644 --- a/content/articles/products/contents/writing-principles.mdx +++ b/content/articles/products/contents/writing-principles.mdx @@ -7,8 +7,7 @@ order: 1 ライティングガイドラインは、SmartHRのプロダクトで表記する言葉についての指針を示したものです。 [デザイン原則](/products/principles/)に基づき、わかりやすく統一感のある言葉を誰でも迷わずに決定できる状態を目指します。 -「わかりやすい」の定義については、[UXライティンググループミッション 〜プロダクトを、もっとわかりやすく〜](https://smarthr-inc.docbase.io/posts/2138204)を参照してください。 - +「わかりやすい」の定義については、[UXライティング部のビジョン](https://smarthr-inc.docbase.io/posts/2438010)を参照してください。 ### 適用範囲 SmartHRのプロダクトで表記する言葉すべてです。 プロダクトとは、アプリケーションだけでなく、ヘルプセンターなど、ユーザーがSmartHRを使うときに触れるものすべてを指します。 diff --git a/content/articles/products/design-patterns-core-features/main-admin.mdx b/content/articles/products/design-patterns-core-features/main-admin.mdx index 20484835c..48541ad73 100644 --- a/content/articles/products/design-patterns-core-features/main-admin.mdx +++ b/content/articles/products/design-patterns-core-features/main-admin.mdx @@ -195,7 +195,7 @@ OOUIにおける`モーダル`画面の一種で、一覧ビューの[よくあ #### C-3. フォーム入力エリア - オブジェクトのプロパティ オブジェクトの持つさまざまなプロパティを設定するフォーム入力要素を配置するエリアです。 -代表的なフォーム入力要素としては、[FormGroup](/products/components/form-group/)や[Input](../../../products/components/input/)を使用したテキスト入力のほか、[共通設定の操作権限項目](/products/design-patterns-core-features/access-control-setting-pattern/)といったチェックボックスやラジオボタンを組み合わせた設定項目などがあります。 +代表的なフォーム入力要素としては、[FormControl](/products/components/form-control/)や[Fieldset](/products/components/fieldset/)、[Input](../../../products/components/input/)を使用したテキスト入力のほか、[共通設定の操作権限項目](/products/design-patterns-core-features/access-control-setting-pattern/)といったチェックボックスやラジオボタンを組み合わせた設定項目などがあります。 #### C-4. タブ 対象オブジェクトのフォームが長大になることが想定される場合、フォームを分割表示し俯瞰性を高めるために[TabBar](../../../products/components/tab-bar/)の使用を検討します。 diff --git a/content/articles/products/design-patterns/delete-dialog.mdx b/content/articles/products/design-patterns/delete-dialog.mdx index 14be0150f..051988f07 100644 --- a/content/articles/products/design-patterns/delete-dialog.mdx +++ b/content/articles/products/design-patterns/delete-dialog.mdx @@ -18,8 +18,6 @@ import { } from 'smarthr-ui' import { ComponentPreview } from '@Components/ComponentPreview' -import { AirtableEmbed } from '@Components/article/AirtableEmbed/AirtableEmbed' - 削除操作をするときのアクションダイアログを定義します。 ## 基本的な考え方 diff --git a/content/articles/products/design-patterns/help-link.mdx b/content/articles/products/design-patterns/help-link.mdx index 29dc6bf89..7e640e2eb 100644 --- a/content/articles/products/design-patterns/help-link.mdx +++ b/content/articles/products/design-patterns/help-link.mdx @@ -5,7 +5,6 @@ order: 11 --- import { FaExternalLinkAltIcon, FaQuestionCircleIcon } from 'smarthr-ui' -import { AirtableEmbed } from '@Components/article/AirtableEmbed/AirtableEmbed' アプリケーションからヘルプセンターの各ヘルプページへのテキストリンクを定義しています。 @@ -49,9 +48,7 @@ import { AirtableEmbed } from '@Components/article/AirtableEmbed/AirtableEmbed' - リンクの目的が判断できれば構いません。リンクテキストとリンク先のページタイトルは完全一致でなくても構いません。(※1.) ## ライティングパターン - - - + diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog.png new file mode 100644 index 000000000..77032da35 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_accessibility_disabled.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_accessibility_disabled.png new file mode 100644 index 000000000..4e7a029b4 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_accessibility_disabled.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_accessibility_error.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_accessibility_error.png new file mode 100644 index 000000000..7853e156c Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_accessibility_error.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_structure.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_structure.png new file mode 100644 index 000000000..2e8d08c88 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_actiondialog_structure.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_fullpage.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_fullpage.png new file mode 100644 index 000000000..160f54263 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_fullpage.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_fullpage_structure.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_fullpage_structure.png new file mode 100644 index 000000000..89f86cb45 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_fullpage_structure.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_partialpage.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_partialpage.png new file mode 100644 index 000000000..81ecc5b35 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_partialpage.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_upward-navigation.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_upward-navigation.png new file mode 100644 index 000000000..1f01c5a89 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_upward-navigation.png differ diff --git a/content/articles/products/design-patterns/modal-ui/images/modal-ui_wizard.png b/content/articles/products/design-patterns/modal-ui/images/modal-ui_wizard.png new file mode 100644 index 000000000..b0a759674 Binary files /dev/null and b/content/articles/products/design-patterns/modal-ui/images/modal-ui_wizard.png differ diff --git a/content/articles/products/design-patterns/modal-ui/index.mdx b/content/articles/products/design-patterns/modal-ui/index.mdx new file mode 100644 index 000000000..9740e7958 --- /dev/null +++ b/content/articles/products/design-patterns/modal-ui/index.mdx @@ -0,0 +1,161 @@ +--- +title: 'モーダルなUI' +description: 'モード、モーダル、モードレスの概念と、SmartHRプロダクトにおけるモーダルなUIのパターンを定義しています。' +order: 10 +--- + +import { DoAndDont } from '@Components/DoAndDont' +import { StaticImage } from '@Components/StaticImage' +import imageUrlUpwardDont from './images/modal-ui_upward-navigation.png' +import imageUrlAccessibilityDo from './images/modal-ui_actiondialog_accessibility_error.png' +import imageUrlAccessibilityDont from './images/modal-ui_actiondialog_accessibility_disabled.png' + +モード、モーダル、モードレスの概念と、SmartHRプロダクトにおけるモーダルなUIのパターンを定義しています。 + +## 基本的な考え方 +### モードとは + +プロダクトが特定のタスクを実行することに特化した状態になっているとき、この状態のことを「**モード(英:mode)**」、タスク完了のために特定のモードを提供するUIを「**モーダル(英:modal)なUI**」と呼びます。モーダルなUIでは、モードの目的であるタスクを完了するか、モードから抜け出す操作をするまで、他のタスクを実行できません。 + +逆に、特定のモードに切り替えることなくタスクを完了できるUIは「**モードレス(英:modeless)なUI**」と呼びます。 + +### モーダルなUIの使いどころ + +SmartHRでは、プロダクトの中心的な画面はモードレスであるように設計しつつ、モードの提供が適切である場面ではモーダルなUIを使用しています。 + +モードの提供を検討する場面として、以下が挙げられます。 + +- オブジェクトの追加・編集 +- オブジェクトの並べ替え +- データの取り込み・書き出し +- 破壊的な処理を実行する前の確認([削除ダイアログ](/products/design-patterns/delete-dialog/)を参照) +- 長く複雑な一連の操作 + +一般的に、UIはなるべくモードレスであるように設計することが推奨されています。これは、モーダルなUIでは機能の全体像がわかりにくく、またユーザーが自由な手順で操作できないといった欠点があるためです。 + +一方で、特にSmartHRのような業務アプリケーションでは、あるデータの変更が広い範囲に影響を及ぼすことがあるため、ユーザーが操作をするたびに処理がモードレスに実行されるのは必ずしも望ましくありません。また、頻度が低いタスクや複雑な操作が必要なタスクの場合、手順を固定するなどして、ユーザーの操作の自由度を下げてでも安全性を高めることを優先することがあります。 + +## 種類 + +モーダルなUIの主なパターンとして、以下を挙げます。 + +- [モーダルダイアログ](#h3-2) +- [ページ全体を使ったモード](#h3-3) +- [ページの一部を使ったモード](#h3-4) +- [ステップを複数に分けたモード](#h3-5) + +### モーダルダイアログ + +モーダルなUIのうち、最も典型的なものが、ダイアログを使ったモードです。モーダルダイアログと呼びます。 + +SmartHR UIでは[ActionDialog](/products/components/dialog/#h3-1)と[MessageDialog](/products/components/dialog/#h3-2)の2種類があります。ユーザーに操作を求める場合はActionDialogを、メッセージを表示するだけでユーザーに操作を求めない場合はMessageDialogを利用します。 + +![ActionDialogの例](./images/modal-ui_actiondialog.png) + +モーダルダイアログの表示中、ダイアログの裏側の領域はスクリム(幕)で隠されています。ダイアログを閉じるか、このモードの目的であるタスクを完了するまで、ダイアログ外の操作はできません。 + +なお、**モードレスなUI**としてダイアログを提供する場合は、[ModelessDialog](/products/components/dialog/#h3-3)を使用します。 + +### ページ全体を使ったモード + +表示したい情報が多い以下のような場合には、ページ全体を使ったモードを検討します。 + +- ダイアログのファーストビュー以外にも重要な情報が存在し、気づきづらい場合 +- ダイアログにするとスクロール(特に横スクロール)が多く発生する場合 + +![ページ全体を使ったモード](./images/modal-ui_fullpage.png) + +### ページの一部を使ったモード + +モードに入る前のレイアウトと似たUIをモードのなかで提供したい場合、ページの一部を使ったモードを検討します。 + +![ページの一部を使ったモード](./images/modal-ui_partialpage.png) + +例えば、[部署マスターの並べ替え機能](https://support.smarthr.jp/ja/help/articles/7e59f1f2-6df7-4c6c-9d84-fc7449a2a6d6/#%E9%83%A8%E7%BD%B2%E3%82%92%E4%B8%A6%E3%81%B9%E6%9B%BF%E3%81%88%E3%82%8B)では、[部署マスターの一覧画面](https://support.smarthr.jp/ja/help/articles/360036111074/)のレイアウトを維持したまま一部をモードにすることで、元々表示されていた部署マスターの一覧と同じ対象を操作しているという認知を促しています。 + + +### ステップを複数に分けたモード +タスクの完了のために複数の操作が必要な場合には、モードのなかでステップを複数に分けることを検討します。 + +![ステップを複数に分けたモード](./images/modal-ui_wizard.png) + + +## 構成 + +[モーダルダイアログ(ActionDialog)](#h3-2)と[ページ全体を使ったモード](#h3-3)を例に、モーダルなUIの構成を示します。 + +モーダルなUIの多くは、次の要素で構成されます。 + +1. 現在のモードのタイトル +2. 説明 +3. 入力要素 +4. モードの操作ボタン + +![ActionDialogの構成](./images/modal-ui_actiondialog_structure.png) + +![ページ全体を使ったモードの構成](./images/modal-ui_fullpage_structure.png) + +### 1. 現在のモードのタイトル + +[見出しの書き方](/products/components/heading/#h3-5)にならって、このモードの目的であるタスクを簡潔に書きます。 + +### 2. 説明 + +機能概要や使い方、注意事項などを記載します。タイトルのすぐ後ろに限らず、必要に応じて入力要素の周辺に記載することもあります。 + +タイトルだけで説明として十分である場合は、別途の説明を省略できます。 + +### 3. 入力要素 + +タスクを実行するためにユーザーが操作する必要のある要素です。[FormControl](/products/components/form-control/)や[Fieldset](/products/components/fieldset/)を使用します。 + +[削除ダイアログ](/products/design-patterns/delete-dialog/)のように「処理実行の前の確認」を目的としたモードの場合、入力要素が無いこともあります。 + +### 4. モードの操作ボタン + +次の2つのアクションのためのボタンを配置します。 + +- タスクを完了してモードを終えるアクション + - タスクを完了するアクションは[Primaryボタン](/products/components/button/#h3-1)を使います。 + - [削除ダイアログ](/products/design-patterns/delete-dialog/)など、危険なアクションの完了には[Dangerボタン](/products/components/button/#h3-3)を使います。 + - ボタンのラベルは、モードの目的であるタスクを完了するアクションであることがわかる動詞を用います。 +- タスクを中断してモードから抜け出すアクション + - タスクを中断するアクションのボタンラベルは[キャンセル]とします。 + +どちらのボタンであっても、ボタンを押すとモードが解除され、元の画面に戻ります。 + +#### ページ全体を使ったモードの場合 + +基本的に[BottomFixedArea](/products/components/bottom-fixed-area/)を使用してボタンを配置します。ただし、モードに入らないサイドバーがあるなど、BottomFixedAreaが不適切なときは、[FloatArea](/products/components/float-area/)を使用します(例:[共通設定のアクションビュー](/products/design-patterns-core-features/main-admin/))。 + +また、タスクを中断して元のページに戻る操作は[キャンセル]ボタンが担います。そのため、基本的に[上に戻るリンク](/products/design-patterns/upward-navigation/)は配置しません。 + +} + label="「上に戻るリンク」と[キャンセル]ボタンが両方配置されている。" +/> + +## エラー状態のアクセシビリティ + +モーダルなUIにおいては、「必須の入力要素が空欄になっている」などの理由でタスクを完了する条件が満たされていない場合であっても、原則として**完了ボタンは無効化せず、ユーザーに完了ボタンを押させた上で、エラーを返す**ようにします。 + +これは、完了のためのボタンを無効化すると、以下の理由によりアクセシビリティやユーザビリティが低下する可能性があるためです。 + +- 無効化されたボタンはキーボード操作でフォーカスを当てられない +- どの入力要素が、どんな理由で完了条件を満たしていないのかが伝わりにくい + +} + label="必須項目が空欄のまま完了ボタンを押すとエラーが返り、どの項目にどんな問題があるかが示される。" +/> +} + label="必須条件を満たさない限り完了ボタンが無効化され押せない。" +/> + +## 参考文献 + +- [サブミット (送信) ボタンをデフォルトで無効化しない | Accessible & Usable](https://accessible-usable.net/2021/10/entry_211014.html) \ No newline at end of file diff --git a/content/articles/products/design-patterns/spacing-layout-pattern.mdx b/content/articles/products/design-patterns/spacing-layout-pattern.mdx index 1f197e936..f0f301f72 100644 --- a/content/articles/products/design-patterns/spacing-layout-pattern.mdx +++ b/content/articles/products/design-patterns/spacing-layout-pattern.mdx @@ -30,7 +30,7 @@ order: 3 ![スクリーンショット:Baseのパディングのパターン](./images/spacing-layout-pattern/spacing-layout-pattern1.png) ### コンテンツエリア内のグループ(BaseColumn)の余白 -基本的に、セクション(主に[セクションタイトル](/products/components/heading/#h3-1)で括られるエリア)内で[FormGroup](/products/components/form-group/)などを複数配置するようなパターンで適用し、中の要素がつまったり狭くなることが想定されるため、`16px`とします。 +基本的に、セクション(主に[セクションタイトル](/products/components/heading/#h3-1)で括られるエリア)内で[FormControl](/products/components/form-control/)や[Fieldset](/products/components/fieldset/)などを複数配置するようなパターンで適用し、中の要素がつまったり狭くなることが想定されるため、`16px`とします。 | 対象エリア | 天地余白 | 左右余白 | | :------- | :------- | :------- | @@ -82,7 +82,7 @@ order: 3 ### アイコンやラベルなどの小さい要素間 アイコンやラベルといった小さい要素を組み合わせる場合は、基本的に`8px`とします。 -- [InfomationPanel](/products/components/information-panel/)や[FormGroup](/products/components/form-group/)などのように、ブロックの見出しや[Input](/products/components/input/)にアイコンやラベルを複合的に組み合わせる場合は、`16px`と`8px`を段階的に組み合わせて適用します。 +- [InfomationPanel](/products/components/information-panel/)や[FormControl](/products/components/form-control/)、[Fieldset](/products/components/fieldset/)などのように、ブロックの見出しや[Input](/products/components/input/)にアイコンやラベルを複合的に組み合わせる場合は、`16px`と`8px`を段階的に組み合わせて適用します。 - インラインテキスト内でテキストリンクにアイコンを付加する場合は、`4px`とします。 ![スクリーンショット:アイコンやラベルなどの小さい要素間](./images/spacing-layout-pattern/spacing-layout-pattern8.png) diff --git a/package.json b/package.json index 2ec629368..cb78b1b94 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "react-instantsearch-dom": "^6.40.4", "react-live": "^4.1.5", "react-string-replace": "^1.1.1", - "smarthr-ui": "^47.1.0", + "smarthr-ui": "^50.0.0", "styled-components": "^5.3.11" }, "devDependencies": { @@ -92,7 +92,6 @@ "gatsby-source-mock": "^1.2.1", "glob": "^10.3.10", "husky": "^8.0.3", - "json-2-csv": "^5.0.1", "lint-staged": "^15.2.0", "micromark": "^4.0.0", "micromark-extension-mdxjs": "^3.0.0", diff --git a/plugins/gatsby-source-sds-airtable/README.md b/plugins/gatsby-source-sds-airtable/README.md index f3acfa289..6a2b888cc 100644 --- a/plugins/gatsby-source-sds-airtable/README.md +++ b/plugins/gatsby-source-sds-airtable/README.md @@ -1,6 +1,6 @@ # gatsby-source-sds-airtable -[airtable](https://www.airtable.com/)にあるデータをAPI経由で取得し、GasbyのGraphQL Data Layerに追加するプラグインです。また、取得したデータをテーブルごとにCSVファイルとして出力もします。 +[airtable](https://www.airtable.com/)にあるデータをAPI経由で取得し、GasbyのGraphQL Data Layerに追加するプラグインです。 ## 準備 @@ -26,12 +26,6 @@ AirtableのAPIから、登録された`AIRTABLE_BASE_ID`で取得できるテー - `/gatsby-plugin-algolia-config.ts`で、検索用のデータとして利用するために取得 - 対象のテーブルは`/src/constants/airtable.ts`から取得しています -### CSVファイルの出力 - -取得したテーブルデータは、`/static/csv`以下にCSVファイルとしても出力します。これは、Airtableデータをiframe埋め込みする際に、CSVダウンロードボタンを表示するためです。Airtableが提供するembed用のHTMLにも、CSVダウンロードボタンがありますが、表示が目立たないため、独自にファイルを用意・ボタンを表示しています(参考:https://github.com/kufu/smarthr-design-system-issues/issues/1250)。 - -CSV生成処理は、ビルド時に毎回行われるため、Airtable上のデータに変更があった場合は、CSVファイルに差分が出ます。 - --- ## Airtable用のプラグイン diff --git a/plugins/gatsby-source-sds-airtable/gatsby-node.ts b/plugins/gatsby-source-sds-airtable/gatsby-node.ts index eb9a7ebfb..fac1b67ad 100644 --- a/plugins/gatsby-source-sds-airtable/gatsby-node.ts +++ b/plugins/gatsby-source-sds-airtable/gatsby-node.ts @@ -1,8 +1,4 @@ -import fs from 'fs/promises' -import path from 'path' - import { SourceNodesArgs } from 'gatsby' -import { json2csv } from 'json-2-csv' const NODE_TYPE = `SdsAirtable` @@ -40,10 +36,6 @@ exports.sourceNodes = async ( if (!tablesRes.ok) return - // CSV出力用のディレクトリを作成。__dirnameは.cacheディレクトリ以下を指すためprocess.cwd()を使う - const csvDir = path.resolve(process.cwd(), './static/csv') - await fs.mkdir(csvDir, { recursive: true }) - const tableData = await tablesRes.json() const tables: TableResponse[] = tableData.tables @@ -79,12 +71,6 @@ exports.sourceNodes = async ( data: record.fields, }) } - - const csvFields: string[] = table.fields.map((field) => field.name) - const csvData = records.map((record) => record.fields) - - const csv = json2csv(csvData, { keys: csvFields, emptyFieldValue: '', excelBOM: true }) - fs.writeFile(`${csvDir}/${table.name}.csv`, csv) } return diff --git a/plugins/gatsby-source-ui-versions/fetchUiVersions.ts b/plugins/gatsby-source-ui-versions/fetchUiVersions.ts index 563cf8219..0cf660f39 100644 --- a/plugins/gatsby-source-ui-versions/fetchUiVersions.ts +++ b/plugins/gatsby-source-ui-versions/fetchUiVersions.ts @@ -156,7 +156,14 @@ export const fetchUiVersions = async (cachedData: UiVersion[], options: UiVersio const dirName = directoryNames.length > 2 ? directoryNames[0] : '' if (!uiStories[storyName]) { - uiStories[storyName] = { storyName, dirName, filePath: story.parameters.fileName, storyItems: [] } + // v49.0.1以降は、モノレポ化に伴いパスが変わった + const pathPrefix = version > '49.0.0' ? 'packages/smarthr-ui/' : '' + uiStories[storyName] = { + storyName, + dirName, + filePath: `${pathPrefix}${story.parameters.fileName}`, + storyItems: [], + } } uiStories[storyName].storyItems.push({ name: story.title, diff --git a/src/components/article/AirtableEmbed/AirtableEmbed.tsx b/src/components/article/AirtableEmbed/AirtableEmbed.tsx deleted file mode 100644 index 03f73c701..000000000 --- a/src/components/article/AirtableEmbed/AirtableEmbed.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import React, { FC } from 'react' -import { AnchorButton, FaFileDownloadIcon } from 'smarthr-ui' -import styled from 'styled-components' - -type Props = { - children: React.ReactNode - tableName: string -} - -export const AirtableEmbed: FC = ({ children, tableName }) => ( - <> - {children} - - } variant="primary" size="s"> - Download CSV - - - -) - -const ButtonWrapper = styled.div` - text-align: right; -` diff --git a/src/components/article/PageIndex/PageIndex.tsx b/src/components/article/PageIndex/PageIndex.tsx index 4a7f7e909..78c527122 100644 --- a/src/components/article/PageIndex/PageIndex.tsx +++ b/src/components/article/PageIndex/PageIndex.tsx @@ -1,4 +1,4 @@ -import { CSS_FONT_SIZE } from '@Constants/style' +import { CSS_COLOR, CSS_FONT_SIZE } from '@Constants/style' import { Link, graphql, useStaticQuery } from 'gatsby' import { marked } from 'marked' import React, { FC } from 'react' @@ -14,7 +14,7 @@ type Props = { const query = graphql` query PageList { - childPageAllMdx: allMdx { + childPageAllMdx: allMdx(sort: { fields: [frontmatter___title], order: ASC }) { edges { node { frontmatter { @@ -109,13 +109,7 @@ const PageTitleHeading = styled.h2` font-size: ${CSS_FONT_SIZE.PX_20}; font-weight: bold; a { - color: inherit; - text-decoration: none; - - &:hover, - &:focus { - text-decoration: underline; - } + text-decoration: undeline; } ` diff --git "a/static/csv/InformationPanel \343\202\263\343\203\224\343\203\274\343\203\221\343\202\277\343\203\274\343\203\263.csv" "b/static/csv/InformationPanel \343\202\263\343\203\224\343\203\274\343\203\221\343\202\277\343\203\274\343\203\263.csv" deleted file mode 100644 index 8b68f012c..000000000 --- "a/static/csv/InformationPanel \343\202\263\343\203\224\343\203\274\343\203\221\343\202\277\343\203\274\343\203\263.csv" +++ /dev/null @@ -1,130 +0,0 @@ -操作,機能,意図,type,カイゼン案,実装済みコピー,要調査 -一括処理受け付け,,"[""ダウンロード"",""一括処理""]",Title,#{job_name}を受け付けました,#{job_name}を予約しました, -一括処理受け付け,,"[""一括処理""]",Message,"処理が完了したら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理 からご確認いただけます。 -一部の操作は、処理が完了するまで実行できません。 -","処理が完了しましたら、メールにてお知らせいたしますので、しばらくお待ちください。 -%br -進捗状況は -= link_to 'バックグラウンド処理一覧', admin_job_histories_path -からご確認いただけます。 -", -ダウンロード受け付け,,"[""ダウンロード""]",Message,"ファイルの準備ができたら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理 からご確認いただけます。 -抽出件数によっては、処理に時間がかかることがあります。","処理が完了しましたら、メールにてお知らせいたしますので、しばらくお待ちください。 -%br -進捗状況は -= link_to 'バックグラウンド処理一覧', admin_job_histories_path -からご確認いただけます。 -- if with_data -%br -データのダウンロード方法は -= zendesk_button_tag(360026105494) do -こちら -をご参照ください。 -%br -なお、処理に1時間以上時間がかかる場合は再度お試しいただくか、状況をお調べしますのでお問い合わせください。", -申請の承認,申請,"[""一括処理""]",Title,申請の承認を受け付けました,申請の承認を予約しました, -申請の依頼,申請,"[""一括処理""]",Title,申請の依頼を受け付けました,申請の依頼を予約しました, -一覧ダウンロード,申請,"[""ダウンロード""]",Title,申請一覧のダウンロードを受け付けました,一覧ダウンロードを予約しました, -申請ダウンロード,申請,"[""ダウンロード""]",Title,申請内容のダウンロードを受け付けました,提出内容のダウンロードを予約しました, -申請の取り消し,申請,"[""一括処理""]",Title,申請の取り消しを受け付けました,申請の取り消しを予約しました, -申請のアーカイブ,申請,"[""一括処理""]",Title,申請のアーカイブを受け付けました,申請のアーカイブを予約しました, -一括処理・ダウンロード受け付け,申請,"[""ダウンロード"",""一括処理""]",Message,"処理が完了したら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理 からご確認いただけます。","処理が完了しましたら、メールにてお知らせいたしますので、しばらくお待ちください。
-進捗状況は、 バックグラウンド処理一覧 からご確認いただけます。", -部署の一括追加,部署,"[""一括処理""]",Title,,部署の一括追加を受け付けました, -部署の一括追加,部署,"[""一括処理""]",Message,"処理が完了したら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理一覧 からご確認いただけます。","処理が完了できたら、メールならびに右上の通知欄からお知らせします。 -
-進捗状況は バックグラウンド処理一覧 で確認ください。", -全件ダウンロード,部署,"[""ダウンロード""]",Title,,部署の全件ダウンロードを受け付けました, -全件ダウンロード,部署,"[""ダウンロード""]",Message,"ファイルの準備ができたら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理一覧 でご確認ください。 -抽出件数によっては、処理に時間がかかることがあります。","ファイルの準備ができたら、メールならびに右上の通知欄からお知らせします。 -
-進捗状況は バックグラウンド処理一覧 で確認ください。 -
-抽出件数によっては、処理に時間がかかることがあります。", -ファイル取り込み,給与明細,"[""アップロード""]",Title,,ファイルの取り込みを受け付けました, -ファイル取り込み,給与明細,"[""アップロード""]",Message,,"予約は、ファイルの取り込みの完了後に予約一覧に表示されます。 -
-処理が完了したら、メールならびに右上の通知欄からお知らせします。 -
-進捗状況は バックグラウンド処理 でご確認ください。", -全件ダウンロード,給与明細,"[""ダウンロード""]",Title,,給与明細(PDFファイル)の全件ダウンロードを受け付けました, -ダウンロードファイルの書き出しの受け付け(重め),給与明細,"[""ダウンロード""]",Message,"ファイルの準備ができたら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理 からご確認いただけます。 -抽出件数によっては、処理に時間がかかることがあります。","ファイルの準備ができたら、メールならびに右上の通知欄からお知らせします。 -
-進捗状況は バックグラウンド処理一覧 からご確認いただけます。 -
-抽出件数によっては、処理に時間がかかることがあります。 -
-1時間以上経っても処理が終わらない場合は、実行し直すか、カスタマーサポートまでお問い合わせください。状況をお調べいたします。", -従業員情報ダウンロード,従業員情報,"[""ダウンロード""]",Title,従業員情報のダウンロードを受け付けしました,従業員情報のダウンロードを予約しました, -従業員情報ダウンロード書き出しの受付,従業員情報,"[""ダウンロード""]",Message,"ファイルの準備ができたら、メールならびに右上の通知欄からお知らせします。 -進捗状況は バックグラウンド処理一覧 からご確認いただけます。 -抽出件数によっては、処理に時間がかかることがあります。","処理が完了しましたら、メールにてお知らせいたしますので、しばらくお待ちください。 -

-進捗状況は、 - バックグラウンド処理一覧 -からご確認いただけます。 -

-データのダウンロード方法は - -こちら - -をご参照ください。 -

-なお、処理に1時間以上時間がかかる場合は再度お試しいただくか、状況をお調べしますのでお問い合わせください。", -経路設定,申請,"[""エラー""]",Title,,承認者が不足しているステップがあります, -経路設定,申請,"[""エラー""]",Message,,該当するステップを修正して「更新する」を押してください。, -,申請,"[""エラー""]",Title,,承認設定の変更が必要です, -,申請,"[""エラー""]",Message,,"お客様のプランでは承認設定「あり」の申請フォームをご利用いただけません。該当する申請をすべて取り消してから承認設定を「なし」に変更後、申請もしくは申請依頼が可能になります。お手数ですが、管理者にご連絡ください。 - -承認設定を変更する", -詳細,申請,"[""エラー""]",Title,,この申請には承認者が不足しているステップがあります, -詳細,申請,"[""エラー""]",Message,,"承認者が不足しているステップがあるため、最後まで承認されない可能性があります。 -
-経路を確認の上、再設定してください。", -詳細,申請,"[""エラー""]",Message,,"承認者が不足しているステップがあるため、最後まで承認されない可能性があります。 -
-申請経路について管理者に確認してください。", -多段階承認リリース時の闇,申請,"[""エラー""]",Title,"特殊な経緯で出している文言なのでこのままで良しとする -https://smarthr-inc.docbase.io/posts/1464275#%E6%9D%A1%E4%BB%B6%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%81%8C%E7%94%B3%E8%AB%8B%E4%BE%9D%E9%A0%BC%E4%B8%AD-%E6%89%BF%E8%AA%8D%E5%BE%85%E3%81%A1-%E3%81%AE%E7%94%B3%E8%AB%8B",承認設定の変更が必要です, -多段階承認リリース時の闇,申請,"[""エラー""]",Message,"特殊な経緯で出している文言なのでこのままで良しとする -https://smarthr-inc.docbase.io/posts/1464275#%E6%9D%A1%E4%BB%B6%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%81%8C%E7%94%B3%E8%AB%8B%E4%BE%9D%E9%A0%BC%E4%B8%AD-%E6%89%BF%E8%AA%8D%E5%BE%85%E3%81%A1-%E3%81%AE%E7%94%B3%E8%AB%8B","お客様のプランでは承認設定「あり」の申請フォームをご利用いただけません。該当する申請をすべて取り消してから承認設定を「なし」に変更後、申請もしくは申請依頼が可能になります。お手数ですが、管理者にご連絡ください。 - -承認設定を変更する", -詳細|差し戻しステータス(申請者),申請,"[""状態を表す""]",Title,,申請が差し戻されました。内容を修正して再度申請してください。,true -詳細|差し戻しステータス(下位承認者),申請,"[""状態を表す""]",Title,,申請が差し戻されました、内容を確認してください。,true -詳細|差し戻しステータス(差し戻し時),申請,"[""状態を表す""]",Title,,以下の理由で申請を差し戻しました。,true -詳細|差し戻しステータス(承認者視点),申請,"[""状態を表す""]",Title,,以下の理由で差し戻しがあった申請です。,true -詳細|差し戻しステータス,申請,"[""状態を表す""]",Message,,"差し戻し理由 -{confirm.approverComment}", -給与明細の取り込み,給与明細,"[""エラー""]",Title,,給与明細の取り込みに失敗しました, -給与明細の取り込み,給与明細,"[""エラー""]",Message,,お手数ですが、 [給与明細の操作] からこの給与明細を削除して再度追加してください。, -部署の並び替え,部署,"[""状態を表す""]",Title,,部署を並べ替え中, -部署の並び替え,部署,"[""状態を表す""]",Message,,"行をドラックアンドドロップすることで部署の順序を変更できます。 -
-変更が終わったら「完了」ボタンを押してください。", -アクセストークンの発行,アクセストークン,"[""サポート""]",Title,,${createdToken.label}のアクセストークンを発行しました, -アクセストークンの発行,アクセストークン,"[""サポート""]",Message,,"下記のアクセストークンは、必ずこの場でメモするなど、保管をお願いします。 -
-漏洩防止のため、このアクセストークンの文字列は、再度表示することはできません。 -
-忘れた場合は、新規発行し直す必要があります。", -給与明細一覧,給与明細,"[""サポート""]",Title,,操作のヒント, -給与明細一覧,給与明細,"[""サポート""]",Message,,"
  • 新しい給与明細一覧画面の使い方は、給与明細>使い方をご覧ください。
  • -
  • 確定を解除すると、給与明細の削除やCSVファイルの取り込みができるようになります。
  • -{status === 'published' && ( -
  • -給与明細の発行を通知するには、従業員の通知用メールアドレスが設定されている必要があります。 -
    -設定手順は従業員に明細の発行や情報の入力依頼を通知する -をご覧ください。 -
  • ", -詳細|フォーム入力時,申請,"[""サポート""]",Title,この申請フォームについて,フォームの説明, -詳細|フォーム入力時,申請,"[""サポート""]",Message,,(申請フォームの概要が入ってた場合その内容), -,,[],,,, \ No newline at end of file diff --git "a/static/csv/SmartHR\347\224\250\350\252\236\344\270\200\350\246\247.csv" "b/static/csv/SmartHR\347\224\250\350\252\236\344\270\200\350\246\247.csv" deleted file mode 100644 index 1a1009947..000000000 --- "a/static/csv/SmartHR\347\224\250\350\252\236\344\270\200\350\246\247.csv" +++ /dev/null @@ -1,4 +0,0 @@ -Name,Notes,Attachments,Status -有料プラン,料金プランのうち、0円プランを除いた利用料金が発生するプランのこと。具体的には、スモールプラン、スタンダードプラン、プロフェッショナルプラン(2020年11月時点),, -有料オプション,有料プランの利用料金に加えて、さらに料金が発生する追加機能のこと。,, -,,, \ No newline at end of file diff --git "a/static/csv/UI\343\203\206\343\202\255\343\202\271\343\203\210.csv" "b/static/csv/UI\343\203\206\343\202\255\343\202\271\343\203\210.csv" deleted file mode 100644 index b343ae3a5..000000000 --- "a/static/csv/UI\343\203\206\343\202\255\343\202\271\343\203\210.csv" +++ /dev/null @@ -1,217 +0,0 @@ -name,order,description,discussion,source,record_id,data -ディスクリプションは敬体(です、ます調)を用いて、動詞まで書く,1,"アプリケーションにおけるディスクリプション(説明文)は、動詞まで記載します。体言止めは避けましょう。 -なお、文体は敬体(です、ます調) を用います。 - -画面ごとのライティングの詳細は、デザインパターンで確認してください。",,,rec3a7Zdutgvon4br, -括弧「 」、[ ]、【 】の使い分け,2,"ライティングスタイル「[括弧類は「 」、[ ]、【 】、( )を使用する](https://smarthr.design/products/contents/writing-style/#recjsU00afnK5o9bV-0)」に準拠して準拠して、全角記号を使用します。 - -アプリケーション上での括弧の使い分けは以下です。 -ヘルプページやリリースノートも準じます。 - -**文中でファイル名を示すときに囲うもの** -- ファイル名:`「 」` -地の文と区別したい -強調したいとき - -**画面上の表示を示すときに囲うもの** -- 画面名、設定項目名、タブ名、操作ボタン名、選択肢など → `[ ]` -- フォームなどにユーザーが入力する文字列や値 → `「 」` -例:`「1000」と入力します。` -- ユーザーが独自に命名するオブジェクト名 → `【 】` -`【 】`は、以下のような場合に適宜使いましょう。 -注意して操作してほしいとき -強調させたいとき -ダイアログなどで操作手順を示すとき -例:`【2023年上期評価】を削除します。`",,,recS7XgDVNPckoJYS, -日付と時間の表記,3,"日付(date)の文字列形式は、他社アプリケーションと連携しやすいよう、「YYYY/MM/DD」で表記します。 - -- YYYY:西暦年4桁 -- MM:2桁の月 -- dd:2桁の日 -で表し、区切りには「/」を使用します。 - -時刻(time)の文字列形式は、HH:MMで表記します。 - -- HH:24時間制の2桁 -- MM:2桁の分 -で表し、区切りには「:」を使用します。",,,recrVJDNdUWuhYTG5, -アクションに関する画面やダイアログのタイトルでは、助詞は「の」を使用する,4,"操作画面やアクションダイアログで、オブジェクトを明記しながら操作を表す場合には、助詞に「の」を使用します。 -[削除ダイアログ](https://smarthr.design/products/design-patterns/delete-dialog/)などの一部を除き、タイトルには名前を示したいので、操作を動名詞として扱う「の」を伴います。 - -**例** - -OK:権限の追加、申請の取り消し -NG:権限を追加、申請を取り消し",,,recjyivasdV2xw6rX, -ボタンやテキストリンクでは、助詞は「を」を使用する,5,"ボタンのアクションテキストやリンクテキストでオブジェクトを明記する場合には、助詞に「を」使用します。 -操作ボタンやリンクはユーザーの動作を表すので、操作を動詞として扱う「を」を伴います。 - -**例** - -OK:権限を追加、申請を取り消し -NG:権限の追加、申請の取り消し - -なお、画面タイトルは、操作を動名詞で表すという意図から「の」を使用します。",https://smarthr-inc.docbase.io/posts/1512192,,reccSLpBRYw4z7b1m, -画面タイトル、項目名、ボタンは名詞、動名詞で表記する,6,"画面タイトル、項目名、ボタンに表示するアクションテキストは名詞、動名詞による表現を基本とし、オブジェクトを伴って動詞で書く場合には用言止めにします。 - -関連ルール -[ボタンやテキストリンクでは、助詞は「を」を使用する](https://smarthr.design/products/contents/app-writing/#reccSLpBRYw4z7b1m-0) - -**例** - -OK:取り込み、CSVを取り込む -NG:CSVを取り込み - -画面ごとのライティングの詳細は、デザインパターンで確認してください。",,,recqtx0JSES2qkp3X, -移動の操作を表す時の助詞は、具体的な対象なら「に」、相対的な位置なら「へ」,7,"移動の操作を書く場合、可能な限り場所を明示し「に」を伴います。 -ただし、省略する場合は、相対的な位置で示して「へ」を伴います。 - -[○○](画面名)や[〇〇一覧]といった具体的な場所を指す場合は「に」を使用します。 - -**例** - -OK:「一覧に戻る」、 「従業員リストに戻る」 -NG:「一覧へ戻る」 - -前後左右といった相対的な位置を指す場合は「へ」を使用します。 - -**例** - -OK:「前へ」、「前へ戻る」 -NG:「前に戻る」",https://smarthr-inc.docbase.io/posts/1719994,,rec32YGJfPz2PYrvQ, -テキストリンクは「こちら」ではなく、移動先を想起しやすい表現をする,8,"テキストリンクは、移動先にどのような情報があるかを判断しやすいよう表現します。「詳細はこちら」などのリンク先を想起しづらい表現を避け、なるべく具体的な情報を記載しましょう。 - -ただし、文字数に制限がある場合は「ヘルプを参照する」などの表現をして構いません。 - -関連ルール -[ヘルプページへの動線](https://smarthr.design/products/design-patterns/help-link/) - -参考文献 -[Web Content Accessibility Guidelines - 2.4.4 リンクの目的(コンテキスト内)を理解する](https://waic.jp/translations/UNDERSTANDING-WCAG20/navigation-mechanisms-refs.html)",https://smarthr-inc.docbase.io/posts/1308637#%E3%83%AA%E3%83%B3%E3%82%AF,,recQWQ2jV7NYgnzky, -よくあるテーブルの見出しに「一覧」はつけない,9,"[よくあるテーブル](https://smarthr.design/products/design-patterns/smarthr-table/)のような表形式の一覧表示の見出しでは、「一覧」を省略します。 - -同様に、メインオブジェクトが一覧の画面タイトルも同様に「一覧」を省略します。 - -ただし、機能名とオブジェクト名が一致する場合は、同じ画面内でコンテンツを区別するために「一覧」をつけてください。 -**例:申請機能** -- 申請機能の画面タイトルは「申請」 -- 申請を一覧表示するテーブルの見出しは「申請一覧」 - -[「上階層に戻る」リンク](https://smarthr.design/products/design-patterns/upward-navigation)の場合は、戻る画面を具体的に伝えるために「〇〇一覧に戻る」の表記とします。簡潔な言い回しにするため、「〜の一覧」のように「の」はつけません。","見出しについては、一覧であることが明白なので必要ないと判断。 -前の画面をより具体的に伝えるために、戻るリンクには「〇〇一覧」の表記にした方が良いと考えました。",,recHmpb0LwZk9yHir, -ページタイトルは、機能名とSmartHRをバーティカルバー(|)でつなぐ,10,"アプリケーション内、ヘルプセンター、利用規約、サービスサイトなどSmartHR全体を通して「SmartHR(スマートHR)」 という表記に統一します。 - -ページタイトルは、「{機能名}|SmartHR(スマートHR)」とします。 - -**例** -- 文書配付|SmartHR(スマートHR) -- 組織図|SmartHR(スマートHR)"," -https://kufuinc.slack.com/archives/CJX59GJFR/p1631164443066500",,recLCTnVvzawaYZUX, -ユーザー名、アカウントの表記方法,11,"社員番号と従業員氏名を併記する場合は、社員番号と氏名の間に半角スペースを挿入して、「{社員番号} {姓} {名}さんの{オブジェクト名}」のように書きます。 - -**例** -- 0001 須磨 英子さんの育児休暇申請 -- 0001 eiko.suma@example.com の育児休暇申請 -- 0001 の育児休暇申請 -- 新しい従業員の育児休暇申請",,,recqkQpnslZNKlmku, -例を示すときには、コロン(:)を使用する,12,"ヒントメッセージなどで、例を示すときには「( )」ではなく、「:」を使いましょう。 - -括弧類は、左右を組み合わせて(両括弧)の使用が基本的な用法。右側のみ(片括弧)で使うことも間違いではないものの、学術論文や大学のレポートなどでの使用なので、SmartHRのヒントメッセージなどでは、両括弧を推奨とします。 - -また、`例:`と`(例)`で比較すると、コロンを使用した方が少ない文字数に収められるので、「:」を使うことにしました。 - -**例** -OK:例:hogehoge -NG:(例)hogehoge、例)hogehoge、例: hogehoge - -関連ルール -[記述記号は全角を使用し、前後にスペースは入れない](https://smarthr.design/products/contents/writing-style/#recrVEn3NYr2AV33o-0)",,,reczEE8cNtcaKdPfS, -作成を表す言葉(登録・追加・作成の考え方),13,"新しくオブジェクトを作る操作を表現する言葉は、言葉の意味を理解し、コンテキストに合わせて使い分けましょう。 - -**登録** -- 登録とは、帳簿や原簿に記し載せること -- 例:(従業員を)新規登録する、事業所の登録 - -**追加** -- 追加とは、すでにあるものに、あとからさらに加えること -- 例:(事業所に)雇用形態を追加する、(事業所に)部署を追加する、(従業員に)家族を追加する - -**作成** -- 作成とは、計画や書類、また文章などを作ること -- 例:雇用契約書の作成、報告書を作成する",https://smarthr-inc.docbase.io/posts/1307881,,rec9RG6ZyvjvAVwli, -操作を止めるときの言葉(キャンセル・取り消し・中断の考え方),14,"操作を止めるときの言葉は、言葉の意味を理解し、コンテキストに合わせて使い分けましょう。 - -**キャンセル** -- キャンセルとは、まだ実行していない操作を止めること -- 例:従業員情報の編集をキャンセルする、申請の提出をキャンセルする - -**取り消し** -- 取り消しとは、すでに実行した操作を止めること -- 例:申請を取り消す、登録を取り消す - -**中断** -- 中断とは、実行中の操作を止めること -- 例:アンケートの回答を中断して、一時保存する",,,recVTtjEolcwnekKx, -状態を戻すときの言葉(解除・差し戻し・戻すの考え方),15,"状態を戻すときの言葉は、言葉の意味を理解し、コンテキストに合わせて使い分けましょう。 - -**解除** -- 解除とは、元の状態に戻すこと -- 例:確定を解除する、アーカイブを解除する - -**差し戻し** -- 差し戻しとは、ワークフローで承認ないしは合意を求められたユーザーが提出されたものに対して修正を求めること -- 例:申請を差し戻す、承認依頼を差し戻す - -**戻す** -- 戻すとは、業務フローの中でタスクを前の状態に戻すこと -- 例:未確定に戻す",,,recjKfUnqMJynww3s, -複製したオブジェクトは、オブジェクト名の頭に(コピー)をつける,16,"複製したオブジェクトの名前は、オブジェクト名の頭に`(コピー)`をつけます。 - -**例(オブジェクト名が「hogehoge」の場合)** -- (コピー)hogehoge - -ファイル名の末尾に「のコピー」などを追加していくと、一覧表示での視認性が悪くなるほか、長いオブジェクト名の場合にコピーであることに気がつきにくいため、プレフィクスをつけることにしました。",https://kufuinc.slack.com/archives/CJX59GJFR/p1643274254069400,,rec8sF68HJa9bgj6E, -ファイルを取り込んで操作するときの文言,17,"一括登録など、CSVファイルを取り込んで操作する場合は、以下の通りの表現を用います。 - -ファイルを選択するときのボタンのアクションテキストは「ファイルを選択」 - -ファイルの取り込みを実行するときのボタンのアクションテキストは「一括{操作名}」 もしくは、「取り込み」、「CSVを取り込む」とします。 - -**例** -- 一括登録 -- 一括更新 -- 取り込み -- CSVを取り込む - -関連ルール -[画面タイトル、項目名、ボタンは名詞、動名詞で表記する](https://smarthr.design/products/contents/app-writing/#recqtx0JSES2qkp3X-0) -[ボタンやテキストリンクでは、助詞は「を」を使用する](https://smarthr.design/products/contents/app-writing/#reccSLpBRYw4z7b1m-0)",,,recHzmHRHdkFzMAFw, -バックグラウンド処理をリクエスト時の文言は「{処理名}を受け付けました」,18,"バックグラウンド処理をリクエストしたときに表示する文言は、「{処理名}を受け付けました」とします。 - -**例** - -OK:従業員情報のダウンロードを受け付けました。 -NG:従業員情報のダウンロードを予約しました。 -","https://kufuinc.slack.com/archives/CJX59GJFR/p1608001964454300 - -給与明細でCSV取り込み後のインフォメーションパネルの文言として、予約→受け付けに変更。",,recmJN6xSzgJew26I, -ヘッダーの行も含めてエラーの発生した行数を表示する,19,"バックグラウンド処理のエラー詳細で表示する行数は、ヘッダーの行も含めてエラーの発生した行数を表示します。 - -`{n}行目:{エラー文言}` - -そのため、nには2以上の数字が入ります(なお、1行目はヘッダーになるため、nに1が入ることはない)。",,,reckFUaZa4YoWBYvt, -「デフォルト」と「プリセット」の使い分け,20,"用途に合わせて使い分けましょう。 - -**デフォルト** -- ユーザーによる設定がされていない初期の状態や値を指すときに使用する。システム側で値やデータが設定されているケースと、設定されていないケースの両方がある。 - -**プリセット** -- あらかじめシステム側で設定されている状態を指すときに使用する。 - -**使い分け例** -- デフォルト値 -- プリセットレポート - -なお、「プリセット」はユーザーが使い慣れない言葉なので、機能名称などで用いることを基本とし、ディスクリプションやヘルプページなどで状態を説明する表現としての使用は避けましょう。 - -OK:データがあらかじめ用意されています。 -NG:データがプリセットされています。",https://kufuinc.slack.com/archives/CJX59GJFR/p1637839749187700,,recjCqrK52IdMNu9a, \ No newline at end of file diff --git "a/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210CSV\345\217\226\343\202\212\350\276\274\343\201\277\343\201\256\343\203\220\343\203\203\343\202\257\343\202\260\343\203\251\343\202\246\343\203\263\343\203\211\345\207\246\347\220\206\357\274\211.csv" "b/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210CSV\345\217\226\343\202\212\350\276\274\343\201\277\343\201\256\343\203\220\343\203\203\343\202\257\343\202\260\343\203\251\343\202\246\343\203\263\343\203\211\345\207\246\347\220\206\357\274\211.csv" deleted file mode 100644 index 6e3380131..000000000 --- "a/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210CSV\345\217\226\343\202\212\350\276\274\343\201\277\343\201\256\343\203\220\343\203\203\343\202\257\343\202\260\343\203\251\343\202\246\343\203\263\343\203\211\345\207\246\347\220\206\357\274\211.csv" +++ /dev/null @@ -1,29 +0,0 @@ -結果概要,エラー詳細(理由と対処),エラーの原因,エラー詳細の実装例,エラー原因の所在 -ファイルの取り込みに失敗しました。,時間をおいて、やり直してください。,同じ条件でやり直してみるしかない場合(500エラー系など),,ファイル以外 -ファイルの取り込みに失敗しました。,予期しないエラーが発生しました。しばらく経ってから、やり直してください。,なにもわからないとき,,ファイル以外 -ファイルの取り込みに失敗しました。,"{{先に必要な操作を表す名詞}}がされていません。 -先に{{先に必要な操作を表す名詞}}をしてください。",先に必要な操作があることを伝える場合,,ファイル以外 -ファイルの取り込みに失敗しました。,{{オブジェクト名}}を{{操作を表す名詞}}する場合はプラン変更が必要です。,該当の操作ができないプランであることを伝える場合,,ファイル以外 -ファイルの取り込みに失敗しました。,"{{指定したい形式}}にしたファイルを、取り込んでください。 -{{指定したい形式}}のファイルを、取り込んでしてください。",ファイルの形式が間違っていることを伝える場合,"・文字コードをUTF-8形式にしたファイルを取り込んでください。 -・CSV形式にしたファイルを取り込んでください。",ファイルの形式 -ファイルの取り込みに失敗しました。,ファイルに値が入力されていません。,空のファイルであることを伝える場合,,ファイルの形式 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n列目:項目名が誤っています。,ヘッダー項目が誤っていることを伝える場合,,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{操作できない状態}}{{オブジェクト名}}が入力されています。,仕様として、不可能であることを伝える場合,・n行目:招待中の従業員のメールアドレスが入力されています(a@example.com)。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{制限値}}を超える{{オブジェクト名}}です。,制限値を超えていることを伝える場合,,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{制限値}}に満たない{{オブジェクト名}}です。,制限値を満たしていないことを伝える場合,・n行目:10文字に満たないファイル名です。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{オブジェクト名}}は一度に{{制限値}}までしか{{操作を表す名詞}}できません。,操作できる件数(レコード数)を超過していることを伝える場合,,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,"n行目:{{操作目的を表す名詞}}済みの{{オブジェクト名}}が入力されています。 -n行目:{{操作が済んでいる状態}}{{オブジェクト名}}がすでに存在します。",すでに行われていて、操作できなかったことを伝える場合,"・n行目:招待済みの従業員のメールアドレスが入力されています(a@example.com)。 -・n行目:このメールアドレス(×××××@×××.××)を登録しているアカウントがすでに存在します。",ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:存在しない{{オブジェクト名}}が入力されています。,操作対象となるオブジェクトが存在しないことを伝える場合,・n行目:存在しないアカウント権限が入力されています。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n列目:入力必須の列がありません({{列名}})。,入力必須の列に値が未入力であることを伝える場合,・n列目:入力必須の列がありません(社員番号)。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{オブジェクト名}}が入力されていません。,値が入力されていないことを伝える場合,・n行目:社員番号が入力されていません。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:入力された{{オブジェクト名}}が正しくありません。,入力した値が不正であることを伝える場合,,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:入力された{{オブジェクト名}}に{{不正な条件}}が含まれています。,入力した値に不正な条件が含まれていることを伝える場合,"・n行目:入力されたマイナンバーに数字以外の文字が含まれています。 -・n行目:入力されたマイナンバーに全角の数字が含まれています。 ",ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:入力された{{オブジェクト名}}が{{適正な条件}}ではありません。,入力した値が不正であり、適正な条件でないことを伝える場合,・n行目:入力されたマイナンバーが12桁ではありません。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{登録先}}に登録されている{{オブジェクト名}}と入力されている{{オブジェクト名}}が一致しません。,登録されている値と入力されている値が不一致であることを伝える場合,"・n行目:従業員情報に登録されている{{オブジェクト名}}(氏名 ほげ)と入力されている{{オブジェクト名}}(氏名 ふが)が異なっています。 -・n行目:従業員情報に登録されているメールアドレス(atsushi.hirata@smarthr.co.jp)と入力されているメールアドレスが異なっています(ryu.morikawa@smarthr.co.jp)。",ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:あなたのアカウント権限では、対象の{{オブジェクト名}}に対して操作が許可されていません。,該当の操作が許可されてないことを伝える場合,・n行目:あなたのアカウント権限では、対象の従業員に対して操作権限がありません。,ファイルの入力内容 -◯件の{{操作目的を表す名詞}}に成功しました。◯件の{{操作目的を表す名詞}}に失敗しました。,n行目:{{オブジェクト名}}が重複しています(SHOTAI-002)。,値が重複していたことを伝える場合,,ファイルの入力内容 \ No newline at end of file diff --git "a/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210Flash Message\357\274\211.csv" "b/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210Flash Message\357\274\211.csv" deleted file mode 100644 index 5b87b138f..000000000 --- "a/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210Flash Message\357\274\211.csv" +++ /dev/null @@ -1,33 +0,0 @@ -Name,概要,留意点,実装例 -{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,エラー原因を伝えられない失敗,, -{{バックグラウンド処理名}}の受け付けに失敗しました。,バックグラウンド処理の受け付けに失敗した時,, -{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。時間をおいて、やり直してください。,同じ条件でやり直してみるしかない場合(500エラー系など),, -{{状態を示す修飾語・節・句}}{{オブジェクト名}}は、{{操作を表す名詞}}できません。,仕様として、不可能であることを伝える場合,,"差し戻し済みの依頼は、確認・合意できません。 -署名済みの書類は、差し戻しできません。" -{{制限値}}を超える{{オブジェクト名}}は{{操作を表す名詞}}できません。,制限値エラーで、操作できなかったことを伝える場合,,5MBを超えるPDFファイルはアップロードできません。 -{{制限値}}に満たない{{オブジェクト名}}は{{操作を表す名詞}}できません。,制限値エラーで、操作できなかったことを伝える場合,,12文字に満たないログインボタンのラベルは入力できません。 -{{オブジェクト名}}は{{制限値}}件までしか登録できません。,制限値エラーで、登録/追加できなかったことを伝える場合,"- 必要に応じて、「件」は「個」や「つ」に置き換えて構いません。 -- 必要に応じて、「登録」は「追加」や「アップロード」に置き換えて構いません。",ファイルは5つまでしか登録できません。 -{{オブジェクト名}}は{{制限値}}までしか選択できません。,選択可能な単位を超えたため、操作できなかったことを伝える場合,,続柄の配偶者は1人までしか選択できません。 -{{オブジェクト名}}は、すでに{{操作を表す名詞}}済みです。,エラーの原因となった状態を伝える場合(原因=すでに行われている),"- 必要に応じて、選択対象に限定するために「選択した」や「対象の」などでオブジェクト名を修飾します。 -- オブジェクト名を省略しても構いません。 -","すでに連携済みです。 -選択したマイナンバーは、すでに登録済みです -この書類の従業員は、すでに削除済みです。" -"{{オブジェクト名}}がありません。 -{{オブジェクト名}}は無効です。",エラーの原因となった状態を伝える場合(原因=存在しない),- 必要に応じて、選択対象に限定するために「選択した」や「対象の」などでオブジェクト名を修飾します。,"対象となる依頼がありません。 -書類がありません。" -{{オブジェクト名}}が入力されていません。,エラーの原因となった状態を伝える場合(原因=未入力),,"被扶養者が入力されていません。 -SmartHR手続ID、e-Gov手続IDが入力されていません。 -銀行名が入力されていません。" -"{{オブジェクト名}}が選択されていません。 -{{オブジェクト名}}が指定されていません。",エラーの原因となった状態を伝える場合(原因=未選択),- 「選択」と「指定」は、直前の操作指示で示した操作名に合わせます。,"従業員が選択されていません。 -書類セットが選択されていません。" -{{オブジェクト名}}が正しくありません。,エラーの原因となった状態を伝える場合(原因=不正),, -"{{オブジェクト名}}と{{オブジェクト名}}が一致しません。 - -",エラーの原因となった状態を伝える場合(原因=不一致),,書類に記載されている名前と署名が一致しません。 -"アクセスできません。 -アクセス権限がありません。 -許可されていない操作です。",許可されてない場合,, -予期しないエラーが発生しました。しばらく経ってから、やり直してください。,なにもわからないとき,, \ No newline at end of file diff --git "a/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210\343\203\220\343\203\203\343\202\257\343\202\260\343\203\251\343\202\246\343\203\263\343\203\211\345\207\246\347\220\206\357\274\211.csv" "b/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210\343\203\220\343\203\203\343\202\257\343\202\260\343\203\251\343\202\246\343\203\263\343\203\211\345\207\246\347\220\206\357\274\211.csv" deleted file mode 100644 index 8ab680045..000000000 --- "a/static/csv/\343\202\250\343\203\251\343\203\274\343\203\241\343\203\203\343\202\273\343\203\274\343\202\270\357\274\210\343\203\220\343\203\203\343\202\257\343\202\260\343\203\251\343\202\246\343\203\263\343\203\211\345\207\246\347\220\206\357\274\211.csv" +++ /dev/null @@ -1,19 +0,0 @@ -結果概要,エラー詳細(理由と対処),エラーの原因,エラー詳細の実装例,留意点 -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,時間をおいて、やり直してください。,同じ条件でやり直してみるしかない場合(500エラー系など),, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,予期しないエラーが発生しました。しばらく経ってから、やり直してください。,なにもわからないとき,, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,"{{先に必要な操作を表す名詞}}がまだされていません。 -先に{{先に必要な操作を表す名詞}}をしてください。",先に必要な操作があることを伝える場合,・追加先の書類がまだ作成されていません。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}を{{操作を表す名詞}}する場合はプラン変更が必要です。,該当の操作ができないプランであることを伝える場合,・適用日を指定する場合はプラン変更が必要です, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{操作できない状態}}{{オブジェクト名}}は、{{操作を表す名詞}}できません。,仕様として、不可能であることを伝える場合,・下書きではない書類にはPDFをアップロードできません。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{制限値}}を超える{{オブジェクト名}}です。,制限値を超えていることを伝える場合,・10MBを超えるPDFファイルです。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{制限値}}に満たない{{オブジェクト名}}です。,制限値を満たしていないことを伝える場合,・10文字に満たないファイル名です。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}は一度に{{制限値}}までしか{{操作を表す名詞}}できません。,操作できる件数(レコード数)を超過していることを伝える場合,, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}は、すでに{{操作を表す名詞}}済みです。,すでに行われていて、操作できなかったことを伝える場合,・PDFファイルはすでに追加済みです。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,"{{オブジェクト名}}がありません。 -{{オブジェクト名}}が見つかりません。",操作対象となるオブジェクトが存在しないことを伝える場合,・ファイル名に対応する従業員がみつかりません。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}が入力されていません。,入力されていないことを伝える場合,, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}が正しくありません。,不正なオブジェクトであることを伝える場合,・ファイル名が正しくありません。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}に{{不正な条件}}が含まれています。,オブジェクトに不正な条件が含まれていることを伝える場合,・ファイル名に全角の@が含まれています。, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}に{{適正な条件}}ではありません。,不正なオブジェクトであり、適正な条件でないことを伝える場合,, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,{{オブジェクト名}}と{{オブジェクト名}}が一致しません。,操作したオブジェクトが別のオブジェクトと不一致であることを伝える場合,, -{{オブジェクト名}}の{{操作を表す名詞}}に成功しました。{{オブジェクト名}}の{{操作を表す名詞}}に失敗しました。,あなたのアカウント権限では、対象の{{オブジェクト名}}に対して操作が許可されていません。,該当の操作が許可されてないことを伝える場合,, \ No newline at end of file diff --git "a/static/csv/\343\203\230\343\203\253\343\203\227\343\203\232\343\203\274\343\202\270\343\201\270\343\201\256\345\213\225\347\267\232.csv" "b/static/csv/\343\203\230\343\203\253\343\203\227\343\203\232\343\203\274\343\202\270\343\201\270\343\201\256\345\213\225\347\267\232.csv" deleted file mode 100644 index b7d4a4698..000000000 --- "a/static/csv/\343\203\230\343\203\253\343\203\227\343\203\232\343\203\274\343\202\270\343\201\270\343\201\256\345\213\225\347\267\232.csv" +++ /dev/null @@ -1,6 +0,0 @@ -Name -"詳しくは、{ヘルプページタイトル} を参照してください。" -"{hoge}については、{ヘルプページタイトル} を参照してください。" -"{hoge}の詳しい操作方法は、{ヘルプページタイトル}を参照してください。" -"{hoge}や{fuga}、{piyo}については、{ヘルプページタイトル} を参照してください。" -" {ヘルプページタイトル}" \ No newline at end of file diff --git "a/static/csv/\343\203\251\343\202\244\343\203\206\343\202\243\343\203\263\343\202\260\343\202\271\343\202\277\343\202\244\343\203\253.csv" "b/static/csv/\343\203\251\343\202\244\343\203\206\343\202\243\343\203\263\343\202\260\343\202\271\343\202\277\343\202\244\343\203\253.csv" deleted file mode 100644 index c1a402bc4..000000000 --- "a/static/csv/\343\203\251\343\202\244\343\203\206\343\202\243\343\203\263\343\202\260\343\202\271\343\202\277\343\202\244\343\203\253.csv" +++ /dev/null @@ -1,114 +0,0 @@ -name,description,discussion,source,data,order,status,record_id -冗長な日本語を避ける,"ユーザーに簡潔明瞭に伝えるため、「することができる」などの冗長な表現は極力避けましょう。 - -**例** -OK:◯◯を確認してください。 -NG:◯◯をご確認いただけますようお願いいたします。 - -OK:◯◯しました。 -NG:◯◯させていただきました。",https://smarthr-inc.docbase.io/posts/1304668,,,1,done,recUFXbbdViQh0VfF -正しい文法表現を使用する,"使用したことのある表現であったとしても、文法的に誤っていないかを確認して使用しましょう。 - -例えば、メールや口頭で使用されることが多い「ご参考ください」という表現は文法的には誤りです。正しくは「ご参考にしてください」 -「ご◯◯ください」は「ご利用ください」など、「◯◯する」と言い換えられるときに使用します。",https://smarthr-inc.docbase.io/posts/1304668,,,2,done,rechCKnCrE7PUguTj -常用漢字表にない読み方は使用しない,"常用漢字表にない読み方を「表外読み(表外音訓)」と言います。常用漢字表に掲載されていても、表外読みをする場合は、アプリケーション上での使用は控えましょう。 - -ただし、マーケティングなどで使用している表現に揃えて、SmartHRとして統一したい場合はその限りではありません。 - -**表外読みの例** -- 想い (「思い」を使う) -- 旧い (「古い」を使う) -",,"文科省の常用漢字一覧表 -https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kakuki/14/pdf/jyouyou_kanjihyou.pdf",,3,done,reccmFynVx29ydJEd -平仮名にしたほうが読みやすい漢字は平仮名にする,"漢字より平仮名にしたほうが読みやすかったり、普段から平仮名のほうが馴染みがあったりする場合は、平仮名を用いて、[SmartHRのパーソナリティ](https://smarthr.design/foundation/#h2-0)(誠実・ポジティブ・わかりやすい・親しみやすい)を表現します。 - -一方で、平仮名にしすぎないように注意しましょう。 -平仮名にしすぎると、当てはまる漢字が何かを判断する手間が頻繁に発生し、ユーザーに読解の負荷をかけてしまいます。",,"ひらがなで書くべき漢字のまとめ: 企業サイトで使用する「ひらく漢字」「ひらかない漢字」|コリス -https://coliss.com/articles/build-websites/operations/notational-convention-for-writing.html",,4,done,recWCPX1UhchVaFjO -カタカナ語を用いるときには、まず漢字語での言い換えを検討する,"カタカナ語を一切使用しないことは現実的ではありませんが、安易に使用しないようにしましょう。 - -カタカナ語は、ユーザーごとに、慣れ・不慣れだけでなく、意味の定義の振れ幅が漢字語以上に大きいという傾向があります。意味の理解が不確かな言葉は、ユーザーのメンタルモデルによって、その時々で都合の良い解釈が生じやすいので、できる限りカタカナ語を使用せず、漢字語で表現します。",https://kufuinc.slack.com/archives/CJX59GJFR/p1640660708293300?thread_ts=1638318584.218500&cid=CJX59GJFR,,,5,done,rec2dXhsgUwiy472Q -敬語を使いすぎない,"敬語表現を多用して、情報が伝わりづらくならないように配慮しましょう。 - -**例** -OK:◯◯を確認してください。 -NG:◯◯をご確認いただけますようお願いいたします。 - -OK:◯◯しました。 -NG:◯◯させていただきました。",,https://www.keigoryoku.com/keigo/,,6,done,rec9dReP9sC65CpJU -同じことを複数の表現で説明しないようにする,"同じ意味のものを別の単語や言い回しで表現をするのは避け、用字用語に準拠した表現を使用しましょう。 - -ただし、ヘルプページなどでユーザーの理解を促すための言い換えに伴う別の表現は、意図的なものなのでその限りではありません。",,,,7,done,recQfsKwJVpXRxlh6 -句点(。)を省略する場合,"見出し(Heading)では、「。」は省略します。 -同様に、例を示した場合の、名詞や「など」の後ろでは句点はつけません。 - -UIテキストでは、それぞれのコンポーネントごとのルールを参照してください。",https://kufuinc.slack.com/archives/CJX59GJFR/p1605150202129600,,,8,done,recn6q5jT7ewW7pZ3 -複数の語句を列挙する場合の、読点(、)とナカグロ(・)の使い分け,"列挙の順序に意味があるときは、「、」を使用します。 -順序を入れ替えても構わないときは、「・」を使用します。 - -**使い分け例** -信号は青、黄、赤の順に点灯する。 -信号には青・黄・赤の三色がある。 - -**具体例** -被保険者整理番号、マイナンバー、基礎年金番号のいずれかが必要です。 -※上記は、CSV形式の算定基礎届を取り込んだ際のエラーメッセージ。CSVの項目(列)を入れ替えできないので「、」を使用。",,出典:数学文章作法 基礎編の「2.4語句」,,9,done,recKGcTEWxvwUk5pp -数字と英単語の前後に半角スペースを挿入しない,"和欧混植の文章内の英単語と、数字の前後には半角スペースは入れずに詰めましょう。 - -**例** -OK:PDFファイルをアップロード -NG:PDF ファイルをアップロード - -OK:2020年の年末調整 -NG:2020 年の年末調整",,,,10,done,reckxDxz47sBXPu71 -記述記号は全角を使用し、前後にスペースは入れない,"記述記号は基本的に全角を使用し記号の前後にスペースは挿入しません。英数字とあわせて表記する場合のみ半角を使用します。 - -記述記号とは、以下を指します。 -- 区切り符 `・`(中点、ナカグロ)、`|`(バーティカルバー、パイプ)、`:`(コロン)、`/`(スラッシュ) -- 句読点 `、`(読点)、`。`(句点) -- 括弧類 `( )`、`「 」` 、`[ ]`、`【 】` -- つなぎ符 `― `(ダッシュ)、`…`(三点リーダー)、`〜`(波線) -- `?`(疑問符)、`!`(感嘆符) - -例外として、**3桁以上の数字に使用するカンマ( , )、階層構造を表す際の区切り符( / ,>)、変数を表す波括弧({ })は半角**を使用します。 - -関連する個別ルールは、以下を参照してください。 -[!と?は単独では全角、ペアで使う場合は半角](https://smarthr.design/products/contents/writing-style/#recQiHbJmvR8Ikieq-0) -[括弧類は「」、[]、【】を使用する](https://smarthr.design/products/contents/writing-style/#recjsU00afnK5o9bV-0) -[日付、時刻の形式](https://smarthr.design/products/contents/idiomatic-usage/usage/#recwR0nuqmNcXu06t-0)",https://kufuinc.slack.com/archives/CJX59GJFR/p1643955700509219,,,11,done,recrVEn3NYr2AV33o -括弧類は「 」、[ ]、【 】、( )を使用する,"文章における強調は鉤括弧`「 」`もしくは隅付き括弧`【 】`を使用し、引用符`“ ”` や二重かぎ括弧 `『 』`は使用しません。 -補足は丸括弧`( )`を使用します。丸括弧に限り、全文英語のプレスリリースやWovnでの翻訳結果で半角`( )`を使用します。 - -関連ルール -[記述記号は全角を使用し、前後にスペースは入れない](https://smarthr.design/products/contents/writing-style/#recrVEn3NYr2AV33o-0)",,,,12,done,recjsU00afnK5o9bV -三点リーダー(…)は1つでOK,紙の場合、「…」を使用する場合は、2つで1セットとするのが通例とされていますが、Webなのであまり気にせず1つに統一とします。,,,,13,done,recKg5qqClh1TKhM8 -"3桁以上の数値には、カンマ( , )を入れる","読みやすさの観点から、3桁以上の数値を表記する場合は「,」を入れます。 - -また、カンマは数字に合わせて半角を用います。 - -**例** -1,000,000円、10,000人",https://kufuinc.slack.com/archives/CJX59GJFR/p1612243424065800,,,14,done,recWrkrCQ4Ek9ciTy -変数は{ }を使用する,"環境や設定によって値が変わる変数は、`{ }`を使用します。 - -記述記号は全角を使用しますが、例外として、`{ }`は半角を使用します。 - -**例** -{会社名}、{サブドメイン}.smarthr.jp",https://kufuinc.slack.com/archives/CJX59GJFR/p1664497034945159,,,15,,rechXk4L1zygiEngj -格助詞をむやみに省略しない,"言葉同士の関係がわかりやすいように、「が」「の」「を」「に」「へ」「と」「より」「から」「で」などの格助詞は省略せずに記載しましょう。 - -**例** -OK:項目名を変更します。 -NG:項目名変更します。 - -OK:操作が完了したら〜 -NG:操作完了したら〜",,,,16,,recbNle5jpZ4jhhD5 -条件を示す「場合」「とき」の使い分け,"「場合」と「とき」に大きな違いはありません。1つの文章に、大前提の条件、小前提の条件がある場合は、大前提に「場合」を、小前提に「とき」を使用します。 - -**条件が1つの場合の例** - -- 追加した項目を、従業員に閲覧・更新させたい`場合`、権限の設定が必要です。 -- 同じ部署や、その上位部署に所属する従業員を承認者にしたい`とき`に利用します。 - -**大前提の条件、小前提の条件がある場合の例** - -- 従業員がマイナンバーを提供した`場合`でも、被扶養者のマイナンバーを[提出しない]と回答した`とき`は[提供保留中]と表示されます。",https://kufuinc.slack.com/archives/CJX59GJFR/p1672900957446949,,,17,,rec0FtUMzY38mO7Pt \ No newline at end of file diff --git "a/static/csv/\345\211\212\351\231\244\343\203\200\343\202\244\343\202\242\343\203\255\343\202\260.csv" "b/static/csv/\345\211\212\351\231\244\343\203\200\343\202\244\343\202\242\343\203\255\343\202\260.csv" deleted file mode 100644 index d61bde9e4..000000000 --- "a/static/csv/\345\211\212\351\231\244\343\203\200\343\202\244\343\202\242\343\203\255\343\202\260.csv" +++ /dev/null @@ -1,11 +0,0 @@ -文言,要素,意図,Status,備考 -{オブジェクト名}を削除しますか?,タイトル,,必須, -"【{オブジェクトのインスタンス名}】を削除します。 -または、 -選択した{オブジェクト名}を削除します。",本文,,必須,オブジェクト詳細画面からの削除ボタンを押した場合など自明な場合は、`この{オブジェクト名}を削除します。`としても構いません。 -{関連するオブジェクト名など}に登録されているデータも削除されます。,本文,マスターやカスタム項目などの削除に伴い、SmartHR内のデータも失われる場合,必要に応じて, -{選択したオブジェクトのインスタンス名}に含まれる{オブジェクト名}も削除されます。,本文,上位オブジェクトの削除に伴い、下位オブジェクトも失われる場合,必要に応じて, -削除した{オブジェクト名}は元に戻せません。,本文,完全削除される場合に明示,必要に応じて, -{オブジェクト名}を削除しますか?,本文,,必要に応じて,ダイアログ全体の情報量が多くなった場合、確認文言として追加します。 -"キャンセル -削除",アクションボタン,,, \ No newline at end of file diff --git "a/static/csv/\347\224\250\345\255\227\347\224\250\350\252\236\357\274\232\344\270\200\350\246\247.csv" "b/static/csv/\347\224\250\345\255\227\347\224\250\350\252\236\357\274\232\344\270\200\350\246\247.csv" deleted file mode 100644 index abe65c1b2..000000000 --- "a/static/csv/\347\224\250\345\255\227\347\224\250\350\252\236\357\274\232\344\270\200\350\246\247.csv" +++ /dev/null @@ -1,168 +0,0 @@ -label,slack,ok-example,ng-example,basic-reason,reason,expected,pattern,prh,spec:from,spec:to,status,only use textlint,record_id,add next to textlint,use textlint,UIテキスト,assign -〜,true,〜,"-,−,―,ー",,"[""recwR0nuqmNcXu06t""]",,,,,,,,recJRylxdhcy00ejJ,,,, -!,,!(全角),!(半角),,"[""recAha5XdRwtCl2sE""]",$1!,/([\u3400-\u4DBF\u4E00-\u9FFF\uF900-\uFAFF]|[\uD840-\uD87F][\uDC00-\uDFFF]|[ぁ-んァ-ヶ])![^!\?]/,「!」と「?」は単独で使う場合は全角、ペアで使う場合は半角で表記する https://smarthr.design/products/contents/idiomatic-usage/usage/,,,"[""定義済""]",,recBOtTW6XgtM6Nb4,,true,, -!!,,!!(半角),!!(全角),,"[""recAha5XdRwtCl2sE""]",!!,!!,「!」と「?」は単独で使う場合は全角、ペアで使う場合は半角で表記する https://smarthr.design/products/contents/idiomatic-usage/usage/,!!,!!,"[""定義済""]",,recVsWLMwGNiDmKk5,,true,, -!?,,??(半角),??(全角),,"[""recAha5XdRwtCl2sE""]",!?,!?,「!」と「?」は単独で使う場合は全角、ペアで使う場合は半角で表記する https://smarthr.design/products/contents/idiomatic-usage/usage/,!?,!?,"[""定義済""]",,rec1cJYSPB8HG0w2L,,true,, -?,,?(全角),?(半角),,"[""recAha5XdRwtCl2sE""]",$1?,/([\u3400-\u4DBF\u4E00-\u9FFF\uF900-\uFAFF]|[\uD840-\uD87F][\uDC00-\uDFFF]|[ぁ-んァ-ヶ])\?[^!\?]/,「!」と「?」は単独で使う場合は全角、ペアで使う場合は半角で表記する https://smarthr.design/products/contents/idiomatic-usage/usage/,,,"[""定義済""]",,recIF7OMSRaxeqUhG,,true,, -??,,!?(半角),!?(全角),,"[""recAha5XdRwtCl2sE""]",??,??,「!」と「?」は単独で使う場合は全角、ペアで使う場合は半角で表記する https://smarthr.design/products/contents/idiomatic-usage/usage/,??,??,"[""定義済""]",,recgdPOwQDCuGbA38,,true,, -hh:mm:ss,,"15:35, 15:35:05","15時35分, 15時35分5秒, 3:35:5 PM",,"[""recwR0nuqmNcXu06t""]",$1:$3,/((0?|1)[0-9]|2[0-4])時([0-5][0-9])分([0-5][0-9])秒/,,"00:00:00,01:25:05,6:30:05,15:35:05","00時00分00秒,01時25分05秒,6時30分05秒,15時35分05秒","[""定義予定"",""定義不能""]",,recEBdserXPNNrLbd,,,,むずそうなので保留 -yyyy/mm/dd,,2019/01/01,2019年1月1日,,"[""recwR0nuqmNcXu06t""]",$1/$2/$3,/([0-9]{4})年([1-9]|0[1-9]|1[0-2])月([1-9]|0[1-9]|[12][0-9]|3[01])日/,日付はYYYY/MM/DDの形式で記載する,"2019/01/01,2019/01/01,2019/01/31,2019/12/01,2019/12/31","2019年01月01日,2019年1月1日,2019年1月31日,2019年12月01日,2019年12月31日","[""定義予定"",""定義不能""]",,recqt3laRJINjR51p,,,,むずそうなので保留 -あいこん,,アイコン,マーク,,"[""rec7Fw59rzaFSP96z""]",アイコン,/(? システム標準マスター > 雇用形態 -NG例: マスターデータ > システム標準マスター > 雇用形態マスター","決定経緯(〇〇マスター) -https://kufuinc.slack.com/archives/C01L7GK9APK/p1630288792240500 - -決定経緯(マスター単体で使わない) -https://kufuinc.slack.com/archives/C012HA3JEGH/p1625190009156800?thread_ts=1625131554.123300&cid=C012HA3JEGH - -決定経緯(長音をつける) -https://kufuinc.slack.com/archives/CJX59GJFR/p1599529484034300",,"[""recVrsjw28KxrB6T7"",""rec714J5wde9rhuKp"",""recTMQAGxVPuTA0wz""]",recOUKORjYkZyMeY6,done,ますたー -拠り所や根拠を示す「もと」は平仮名で表記する,45,"拠り所や根拠とする「もと」は平仮名で表記し、漢字の「基」は使いません。 - -漢字よりも平仮名の方がユーザーにとって読みやすく馴染みのある表記と判断しました。 - -OK例: 給与額をもとに -NG例: 給与額を基に",https://kufuinc.slack.com/archives/CJX59GJFR/p1649829413588279,,"[""recjsSGmEaT2tj5Xq""]",recwriblj4bLsRwiR,done,もと -前の工程に戻る場合の「元」は漢字で表記する,46,"前の工程に戻る場合の操作は「元に戻す」「元へ戻る」などと表現します。 - -「もとに」や「もとへ」と表記するよりも、漢字を使用した方がひと目で「前の工程に戻ること」を認知できると判断しました。","https://kufuinc.slack.com/archives/CJX59GJFR/p1612859054114400 -https://kufuinc.slack.com/archives/CJX59GJFR/p1649829413588279",,"[""rec9STuXnkN7U9MFH""]",recyoJ3d3USyzSqd0,done,もと \ No newline at end of file diff --git "a/static/csv/\351\200\232\347\237\245\343\203\241\343\203\274\343\203\253.csv" "b/static/csv/\351\200\232\347\237\245\343\203\241\343\203\274\343\203\253.csv" deleted file mode 100644 index cfc2afb91..000000000 --- "a/static/csv/\351\200\232\347\237\245\343\203\241\343\203\274\343\203\253.csv" +++ /dev/null @@ -1,14 +0,0 @@ -Name,Notes,Status -"
    -

    - 本メールはSmartHRをご利用いただいているお客さまに配信しています。 -
    - 配信専用アドレスのため、ご返信いただいても回答できません。 -
    - ご不明な点がございましたら、チャットサポートをご利用ください。 -
    - SmartHRサポートポリシー -

    -

    - 株式会社SmartHR https://smarthr.jp/ -

    ",メールフッター, \ No newline at end of file diff --git a/static/smarthr-ui.css b/static/smarthr-ui.css index 03324256c..92238f713 100644 --- a/static/smarthr-ui.css +++ b/static/smarthr-ui.css @@ -662,6 +662,11 @@ a { display: none } +.shr-size-\[theme\(fontSize\.base\)\] { + width: 1rem; + height: 1rem +} + .shr-h-1 { height: 16px } @@ -730,6 +735,10 @@ a { max-height: 100% } +.shr-min-h-\[calc\(1em\*theme\(lineHeight\.normal\)\)\] { + min-height: calc(1em * 1.5) +} + .shr-min-h-\[calc\(theme\(fontSize\.base\)_\+_theme\(spacing\[0\.75\]\)_\*_2_\+_theme\(spacing\.px\)_\*_2\)\] { min-height: calc(1rem + 12px * 2 + 1px * 2) } @@ -782,6 +791,10 @@ a { width: 200% } +.shr-w-\[calc\(theme\(fontSize\.base\)\*2\)\] { + width: calc(1rem * 2) +} + .shr-w-\[theme\(fontSize\.2xs\)\] { width: 0.6666666666666666rem } @@ -2192,6 +2205,10 @@ a { padding: unset } +.shr-p-px { + padding: 1px +} + .shr-px-0 { padding-left: 0; padding-right: 0 @@ -2648,8 +2665,7 @@ a { } .\[clip-path\:inset\(100\%\)\] { - -webkit-clip-path: inset(100%); - clip-path: inset(100%) + clip-path: inset(100%) } .\[clip\:rect\(0_0_0_0\)\] { @@ -2708,6 +2724,13 @@ a { box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0077c7 } +.has-\[\:checked\]\:before\:shr-border-shorthand:has(:checked)::before { + content: var(--tw-content); + border-width: 1px; + border-style: solid; + border-color: #d6d3d0 +} + .aria-selected\:shr-border-b-shorthand[aria-selected="true"] { border-width: 0; border-bottom-width: 1px; @@ -2729,6 +2752,13 @@ a { border-style: solid; border-color: #d6d3d0 } + + .forced-colors\:shr-border-t-shorthand { + border-width: 0; + border-top-width: 1px; + border-top-style: solid; + border-top-color: #d6d3d0 + } } .\[\&\:has\(\:focus-visible\)\]\:shr-focus-indicator:has(:focus-visible) { @@ -2903,11 +2933,27 @@ a { top: 50% } +.before\:shr-box-border::before { + content: var(--tw-content); + box-sizing: border-box +} + .before\:shr-block::before { content: var(--tw-content); display: block } +.before\:shr-inline-block::before { + content: var(--tw-content); + display: inline-block +} + +.before\:shr-size-\[theme\(fontSize\.base\)\]::before { + content: var(--tw-content); + width: 1rem; + height: 1rem +} + .before\:shr-h-\[10px\]::before { content: var(--tw-content); height: 10px @@ -2960,6 +3006,23 @@ a { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) } +.before\:shr-scale-\[calc\(2\/3\)\]::before { + content: var(--tw-content); + --tw-scale-x: calc(2 / 3); + --tw-scale-y: calc(2 / 3); + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) +} + +.before\:shr-rounded-full::before { + content: var(--tw-content); + border-radius: 9999px +} + +.before\:shr-border::before { + content: var(--tw-content); + border-width: 1px +} + .before\:shr-border-0::before { content: var(--tw-content); border-width: 0px @@ -2975,12 +3038,22 @@ a { border-style: solid } +.before\:shr-border-\[theme\(colors\.grey\.30\)\]::before { + content: var(--tw-content); + border-color: #c1bdb7 +} + .before\:shr-border-default::before { content: var(--tw-content); --tw-border-opacity: 1; border-color: rgb(214 211 208 / var(--tw-border-opacity)) } +.before\:shr-bg-\[theme\(colors\.grey\.30\)\]::before { + content: var(--tw-content); + background-color: #c1bdb7 +} + .before\:shr-bg-action-background::before { content: var(--tw-content); --tw-bg-opacity: 1; @@ -2998,6 +3071,23 @@ a { padding: calc(4px / 2) } +.before\:shr-transition-\[transform\2c margin\]::before { + content: var(--tw-content); + transition-property: transform,margin; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + transition-duration: 150ms +} + +.before\:shr-duration-150::before { + content: var(--tw-content); + transition-duration: 150ms +} + +.before\:shr-ease-out::before { + content: var(--tw-content); + transition-timing-function: cubic-bezier(0, 0, 0.2, 1) +} + .before\:shr-content-\[\"\"\]::before { --tw-content: ""; content: var(--tw-content) @@ -3010,32 +3100,27 @@ a { .before\:\[clip-path\:polygon\(0_0\2c 100\%_0\2c 50\%_100\%\)\]::before { content: var(--tw-content); - -webkit-clip-path: polygon(0 0,100% 0,50% 100%); - clip-path: polygon(0 0,100% 0,50% 100%) + clip-path: polygon(0 0,100% 0,50% 100%) } .before\:\[clip-path\:polygon\(0_0\2c 100\%_50\%\2c 0_100\%\)\]::before { content: var(--tw-content); - -webkit-clip-path: polygon(0 0,100% 50%,0 100%); - clip-path: polygon(0 0,100% 50%,0 100%) + clip-path: polygon(0 0,100% 50%,0 100%) } .before\:\[clip-path\:polygon\(0_100\%\2c _100\%_0\2c _100\%_100\%\)\]::before { content: var(--tw-content); - -webkit-clip-path: polygon(0 100%, 100% 0, 100% 100%); - clip-path: polygon(0 100%, 100% 0, 100% 100%) + clip-path: polygon(0 100%, 100% 0, 100% 100%) } .before\:\[clip-path\:polygon\(100\%_0\2c 100\%_100\%\2c 0_50\%\)\]::before { content: var(--tw-content); - -webkit-clip-path: polygon(100% 0,100% 100%,0 50%); - clip-path: polygon(100% 0,100% 100%,0 50%) + clip-path: polygon(100% 0,100% 100%,0 50%) } .before\:\[clip-path\:polygon\(50\%_0\2c 100\%_100\%\2c 0_100\%\)\]::before { content: var(--tw-content); - -webkit-clip-path: polygon(50% 0,100% 100%,0 100%); - clip-path: polygon(50% 0,100% 100%,0 100%) + clip-path: polygon(50% 0,100% 100%,0 100%) } .after\:shr-pointer-events-none::after { @@ -3331,26 +3416,22 @@ a { .after\:\[clip-path\:polygon\(0_0\2c 100\%_0\2c 50\%_100\%\)\]::after { content: var(--tw-content); - -webkit-clip-path: polygon(0 0,100% 0,50% 100%); - clip-path: polygon(0 0,100% 0,50% 100%) + clip-path: polygon(0 0,100% 0,50% 100%) } .after\:\[clip-path\:polygon\(0_0\2c 100\%_50\%\2c 0_100\%\)\]::after { content: var(--tw-content); - -webkit-clip-path: polygon(0 0,100% 50%,0 100%); - clip-path: polygon(0 0,100% 50%,0 100%) + clip-path: polygon(0 0,100% 50%,0 100%) } .after\:\[clip-path\:polygon\(100\%_0\2c 100\%_100\%\2c 0_50\%\)\]::after { content: var(--tw-content); - -webkit-clip-path: polygon(100% 0,100% 100%,0 50%); - clip-path: polygon(100% 0,100% 100%,0 50%) + clip-path: polygon(100% 0,100% 100%,0 50%) } .after\:\[clip-path\:polygon\(50\%_0\2c 100\%_100\%\2c 0_100\%\)\]::after { content: var(--tw-content); - -webkit-clip-path: polygon(50% 0,100% 100%,0 100%); - clip-path: polygon(50% 0,100% 100%,0 100%) + clip-path: polygon(50% 0,100% 100%,0 100%) } .first\:shr-rounded-bl-m:first-child { @@ -3544,6 +3625,10 @@ a { display: none } +.disabled\:shr-cursor-\[revert\]:disabled { + cursor: revert +} + .disabled\:shr-cursor-not-allowed:disabled { cursor: not-allowed } @@ -3814,6 +3899,42 @@ a { cursor: default } +.has-\[\:checked\]\:shr-border-\[theme\(colors\.main\)\]:has(:checked) { + border-color: #0077c7 +} + +.has-\[\:disabled\]\:shr-border-\[theme\(borderColor\.default\)\]:has(:disabled) { + border-color: #d6d3d0 +} + +.has-\[\:checked\]\:shr-bg-main:has(:checked) { + --tw-bg-opacity: 1; + background-color: rgb(0 119 199 / var(--tw-bg-opacity)) +} + +.has-\[\:disabled\]\:shr-bg-border:has(:disabled) { + --tw-bg-opacity: 1; + background-color: rgb(214 211 208 / var(--tw-bg-opacity)) +} + +.has-\[\:checked\]\:before\:shr-ms-\[theme\(fontSize\.base\)\]:has(:checked)::before { + content: var(--tw-content); + margin-inline-start: 1rem +} + +.has-\[\:checked\]\:before\:shr-scale-100:has(:checked)::before { + content: var(--tw-content); + --tw-scale-x: 1; + --tw-scale-y: 1; + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) +} + +.has-\[\:checked\]\:before\:shr-bg-white:has(:checked)::before { + content: var(--tw-content); + --tw-bg-opacity: 1; + background-color: rgb(255 255 255 / var(--tw-bg-opacity)) +} + .aria-checked\:shr-border-main[aria-checked="true"] { --tw-border-opacity: 1; border-color: rgb(0 119 199 / var(--tw-border-opacity)) @@ -3929,6 +4050,34 @@ a { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) } +@supports (not selector(:has(+ *))) { + .supports-\[not_selector\(\:has\(\+_\*\)\)\]\:shr-static { + position: static + } + + .supports-\[not_selector\(\:has\(\+_\*\)\)\]\:shr-appearance-auto { + -webkit-appearance: auto; + -moz-appearance: auto; + appearance: auto + } + + .supports-\[not_selector\(\:has\(\+_\*\)\)\]\:shr-border-\[revert\] { + border-color: revert + } + + .supports-\[not_selector\(\:has\(\+_\*\)\)\]\:shr-bg-\[revert\] { + background-color: revert + } + + .supports-\[not_selector\(\:has\(\+_\*\)\)\]\:shr-opacity-100 { + opacity: 1 + } + + .supports-\[not_selector\(\:has\(\+_\*\)\)\]\:shr-outline-\[revert\] { + outline-color: revert + } +} + @media (prefers-reduced-motion: reduce) { .motion-reduce\:shr-animate-none { animation: none @@ -4016,6 +4165,30 @@ a { --tw-shadow-colored: 0 0 #0000; box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) } + + .forced-colors\:has-\[\:disabled\]\:shr-border-\[GrayText\]:has(:disabled) { + border-color: GrayText + } + + .forced-colors\:has-\[\:disabled\:not\(\:checked\)\]\:before\:shr-border-solid:has(:disabled:not(:checked))::before { + content: var(--tw-content); + border-style: solid + } + + .forced-colors\:has-\[\:disabled\:checked\]\:before\:shr-border-\[GrayText\]:has(:disabled:checked)::before { + content: var(--tw-content); + border-color: GrayText + } + + .forced-colors\:has-\[\:disabled\:not\(\:checked\)\]\:before\:shr-border-\[GrayText\]:has(:disabled:not(:checked))::before { + content: var(--tw-content); + border-color: GrayText + } + + .forced-colors\:has-\[input\:not\(\:disabled\)\]\:before\:shr-bg-\[ButtonBorder\]:has(input:not(:disabled))::before { + content: var(--tw-content); + background-color: ButtonBorder + } } .\[\&\&\&\&\]\:shr-bg-main.\[\&\&\&\&\]\:shr-bg-main.\[\&\&\&\&\]\:shr-bg-main.\[\&\&\&\&\]\:shr-bg-main { @@ -4275,17 +4448,17 @@ a { opacity: 1 } -.\[\&\:disabled_\.smarthr-ui-FormGroup-errorMessage\]\:shr-text-inherit:disabled .smarthr-ui-FormGroup-errorMessage { +.\[\&\:disabled_\.smarthr-ui-FormControl-errorMessage\]\:shr-text-inherit:disabled .smarthr-ui-FormControl-errorMessage { font-size: inherit; color: inherit } -.\[\&\:disabled_\.smarthr-ui-FormGroup-label_\>_span\]\:shr-text-disabled:disabled .smarthr-ui-FormGroup-label > span { +.\[\&\:disabled_\.smarthr-ui-FormControl-label_\>_span\]\:shr-text-disabled:disabled .smarthr-ui-FormControl-label > span { --tw-text-opacity: 1; color: rgb(193 189 183 / var(--tw-text-opacity)) } -.\[\&\:disabled_\.smarthr-ui-FormGroup-supplementaryMessage\]\:shr-text-inherit:disabled .smarthr-ui-FormGroup-supplementaryMessage { +.\[\&\:disabled_\.smarthr-ui-FormControl-supplementaryMessage\]\:shr-text-inherit:disabled .smarthr-ui-FormControl-supplementaryMessage { font-size: inherit; color: inherit } @@ -4434,10 +4607,18 @@ a { box-sizing: border-box } +.\[\&\]\:shr-block { + display: block +} + .\[\&\]\:shr-items-center { align-items: center } +.\[\&\]\:shr-overflow-y-visible { + overflow-y: visible +} + .\[\&\]\:shr-rounded-em { border-radius: 1em } @@ -4781,3 +4962,29 @@ a { .\[\&_ul\]\:shr-list-none ul { list-style-type: none } + +:checked~.\[\:checked\~\&\]\:shr-flex { + display: flex +} + +:checked~*>.\[\:checked\~\*\>\&\]\:shr-fill-white { + fill: #fff +} + +@media (forced-colors: active) { + :checked~*>.forced-colors\:\[\:checked\~\*\>\&\]\:shr-fill-\[ButtonText\] { + fill: ButtonText + } + + :disabled~*>.forced-colors\:\[\:disabled\~\*\>\&\]\:shr-fill-\[GrayText\] { + fill: GrayText + } +} + +:not([hidden]) ~ .\[\:not\(\[hidden\]\)_\~_\&\&\&\]\:shr-mt-0\.5.\[\:not\(\[hidden\]\)_\~_\&\&\&\]\:shr-mt-0\.5.\[\:not\(\[hidden\]\)_\~_\&\&\&\]\:shr-mt-0\.5 { + margin-top: 8px +} + +:not([hidden]) ~ .\[\:not\(\[hidden\]\)_\~_\&\&\&\]\:shr-mt-1.\[\:not\(\[hidden\]\)_\~_\&\&\&\]\:shr-mt-1.\[\:not\(\[hidden\]\)_\~_\&\&\&\]\:shr-mt-1 { + margin-top: 16px +} diff --git a/yarn.lock b/yarn.lock index 706b89ed7..5a3a78a46 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5215,7 +5215,7 @@ css-loader@^5.2.7: schema-utils "^3.0.0" semver "^7.3.5" -css-loader@^7.1.0: +css-loader@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-7.1.1.tgz#de4163c0cb765c03d7957eb9e0a49c7f354948c7" integrity sha512-OxIR5P2mjO1PSXk44bWuQ8XtMK4dpEqpIyERCx3ewOo3I8EmbcxMPUc5ScLtQfgXtOojoMv57So4V/C02HQLsw== @@ -5442,10 +5442,10 @@ date-fns@^2.25.0: dependencies: "@babel/runtime" "^7.21.0" -dayjs@^1.11.10: - version "1.11.10" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0" - integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== +dayjs@^1.11.11: + version "1.11.11" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.11.tgz#dfe0e9d54c5f8b68ccf8ca5f72ac603e7e5ed59e" + integrity sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg== debug@2, debug@2.6.9, debug@^2.6.0: version "2.6.9" @@ -5512,11 +5512,6 @@ decompress-response@^6.0.0: dependencies: mimic-response "^3.1.0" -deeks@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/deeks/-/deeks-3.1.0.tgz#ecc47c600bcc6dbda656c6d86bbc96cbe126fd41" - integrity sha512-e7oWH1LzIdv/prMQ7pmlDlaVoL64glqzvNgkgQNgyec9ORPHrT2jaOqMtRyqJuwWjtfb6v+2rk9pmaHj+F137A== - deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -5699,11 +5694,6 @@ dlv@^1.1.3: resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== -doc-path@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/doc-path/-/doc-path-4.1.1.tgz#5be8c1671877f6b719af5a6077c41904be8913ac" - integrity sha512-h1ErTglQAVv2gCnOpD3sFS6uolDbOKHDU1BZq+Kl3npPqroU3dYL42lUgMfd5UimlwtRgp7C9dLGwqQ5D2HYgQ== - doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" @@ -9156,14 +9146,6 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== -json-2-csv@^5.0.1: - version "5.5.1" - resolved "https://registry.yarnpkg.com/json-2-csv/-/json-2-csv-5.5.1.tgz#2ad4e69d4b2bb4590203948a36f11347a4d7aed9" - integrity sha512-KgAtAXTQopRwe90gh8SgjRSxgt9bUWbGAPMo9W0TZLA8SqiQH7khtagFfeEUjG3NBPwJu/+9uX5pMvunKaPvrQ== - dependencies: - deeks "3.1.0" - doc-path "4.1.1" - json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" @@ -12393,10 +12375,10 @@ react-frame-component@^5.2.6: resolved "https://registry.yarnpkg.com/react-frame-component/-/react-frame-component-5.2.6.tgz#0d9991d251ff1f7177479d8f370deea06b824b79" integrity sha512-CwkEM5VSt6nFwZ1Op8hi3JB5rPseZlmnp5CGiismVTauE6S4Jsc4TNMlT0O7Cts4WgIC3ZBAQ2p1Mm9XgLbj+w== -react-icons@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-5.0.1.tgz#1694e11bfa2a2888cab47dcc30154ce90485feee" - integrity sha512-WqLZJ4bLzlhmsvme6iFdgO8gfZP17rfjYEJ2m9RsZjZ+cc4k1hTzknEz63YS1MeT50kVzoa1Nz36f4BEx+Wigw== +react-icons@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-5.2.1.tgz#28c2040917b2a2eda639b0f797bff1888e018e4a" + integrity sha512-zdbW5GstTzXaVKvGSyTaBalt7HSfuK5ovrzlpyiWHAFXndXTdd/1hdDHI4xBM1Mn7YriT6aqESucFl9kEXzrdw== react-innertext@^1.1.5: version "1.1.5" @@ -13484,20 +13466,20 @@ smarthr-normalize-css@^1.1.0: dependencies: styled-reset "^4.4.2" -smarthr-ui@^47.1.0: - version "47.1.0" - resolved "https://registry.yarnpkg.com/smarthr-ui/-/smarthr-ui-47.1.0.tgz#a468c877f129465b3b2a47e50efbc61320ba1247" - integrity sha512-4NFQ5z04UdVNhrEe365CDjYrKlX1AyWzcJKsC5TGubXhcUq116JWlk+QMCCBVdIQS2H67hKSmVYMUx3a5y7BGQ== +smarthr-ui@^50.0.0: + version "50.0.0" + resolved "https://registry.yarnpkg.com/smarthr-ui/-/smarthr-ui-50.0.0.tgz#f867ff8c182d780297769fdfbbdd7f0e567e8c48" + integrity sha512-/amoBy0mWcfEuLNnxbM9GJA7CXJohaYO3w5RB0HPFISNwkufmOJblh9aFtBMlytepVQHaXt/Rbbc9dezgfq1+w== dependencies: "@smarthr/wareki" "^1.2.0" - css-loader "^7.1.0" - dayjs "^1.11.10" + css-loader "^7.1.1" + dayjs "^1.11.11" lodash.merge "^4.6.2" lodash.range "^3.2.0" polished "^4.3.0" postcss-loader "^8.1.1" react-draggable "^4.4.6" - react-icons "^5.0.1" + react-icons "^5.2.1" react-innertext "^1.1.5" react-transition-group "^4.4.5" style-loader "^4.0.0" @@ -13737,7 +13719,16 @@ string-similarity@^1.2.2: lodash.map "^4.6.0" lodash.maxby "^4.6.0" -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -13861,7 +13852,7 @@ stringify-entities@^4.0.0: character-entities-html4 "^2.0.0" character-entities-legacy "^3.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -13882,6 +13873,13 @@ strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" @@ -15859,7 +15857,7 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -15877,6 +15875,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"