diff --git a/api/author_rest_api.yaml b/api/author_rest_api.yaml new file mode 100644 index 00000000..d939d8b4 --- /dev/null +++ b/api/author_rest_api.yaml @@ -0,0 +1,443 @@ +openapi: 3.0.3 +info: + title: 著者DBを操作するためのWEB API + version: "1.0" +tags: + - name: author + description: 著者DB操作 + +paths: + /api/{version}/authors: + get: + tags: + - author + summary: 著者DB検索 + description: | + 指定された検索キーで著者DBを検索する。 + |ロール|動作| + |----|----| + |システム管理者|著者DBを検索可能| + |リポジトリ管理者|著者DBを検索可能| + |コミュニティ管理者|著者DBを検索不可| + |登録ユーザー|著者DBを検索不可| + |一般ユーザー|著者DBを検索不可| + |ゲストユーザー|著者DBを検索不可| + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + - name: fullname + in: query + schema: + type: string + description: 著者姓名 + - name: firstname + in: query + schema: + type: string + description: 著者名 + - name: familyname + in: query + schema: + type: string + description: 著者姓 + - name: idtype + in: query + schema: + type: string + description: 著者識別子の種類 + - name: authorid + in: query + schema: + type: string + description: 著者識別子 + - name: Authorization + in: header + schema: + type: string + description: Bearer アクセストークン + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorsResponse' + '400': + description: リクエストに不備がある + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '500': + description: 内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + + post: + tags: + - author + summary: 著者DB著者登録 + description: | + 渡された内容で著者を登録する。 + |ロール|動作| + |----|----| + |システム管理者|著者を登録可能| + |リポジトリ管理者|著者を登録可能| + |コミュニティ管理者|著者を登録不可| + |登録ユーザー|著者を登録不可| + |一般ユーザー|著者を登録不可| + |ゲストユーザー|著者を登録不可| + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorRequest' + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorCreateResponse' + '400': + description: リクエストに不備がある + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '500': + description: 内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + + /api/{version}/authors/{identifier}: + put: + tags: + - author + summary: 著者DB著者変更 + description: | + 指定された著者の情報を送られてきた情報で置き換える。 + |ロール|動作| + |----|----| + |システム管理者|著者を変更可能| + |リポジトリ管理者|著者を変更可能| + |コミュニティ管理者|著者を変更不可| + |登録ユーザー|著者を変更不可| + |一般ユーザー|著者を変更不可| + |ゲストユーザー|著者を変更不可| + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + - name: identifier + in: path + required: true + schema: + type: string + description: 著者の識別子(ElasticSearchのuuidまたはauthorsテーブルのid) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorUpdateRequest' + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorUpdateResponse' + '400': + description: リクエストに不備がある + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '404': + description: 指定された著者が存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '500': + description: 内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + + delete: + tags: + - author + summary: 著者DB著者削除 + description: | + 指定された著者情報を削除する。 + |ロール|動作| + |----|----| + |システム管理者|著者を削除可能| + |リポジトリ管理者|著者を削除可能| + |コミュニティ管理者|著者を削除不可| + |登録ユーザー|著者を削除不可| + |一般ユーザー|著者を削除不可| + |ゲストユーザー|著者を削除不可| + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + - name: identifier + in: path + required: true + schema: + type: string + description: 著者の識別子(ElasticSearchのuuidまたはauthorsテーブルのid) + responses: + '200': + description: 正常終了 + '400': + description: リクエストに不備がある + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '404': + description: 指定された著者が存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + '500': + description: 内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + +components: + schemas: + ErrorBody: + type: object + properties: + code: + type: string + description: エラーコード + message: + type: string + description: エラーメッセージ + AuthorsResponse: + type: object + properties: + authors: + type: array + items: + $ref: '#/components/schemas/Author' + AuthorRequest: + type: object + properties: + author: + $ref: '#/components/schemas/Author' + AuthorUpdateRequest: + type: object + properties: + force_change: + type: boolean + description: 著者名の変更をアイテムに反映するかどうか + author: + $ref: '#/components/schemas/Author' + AuthorCreateResponse: + type: object + properties: + author: + allOf: + - type: object + - description: 登録された著者情報 + - $ref: '#/components/schemas/Author' + message: + type: string + description: 登録結果メッセージ + example: Author successfully registered. + AuthorUpdateResponse: + type: object + properties: + author: + allOf: + - type: object + - description: 更新された著者情報 + - $ref: '#/components/schemas/Author' + message: + type: string + description: 更新結果メッセージ + example: Author successfully updated. + Author: + type: object + properties: + emailInfo: + type: array + items: + type: object + properties: + email: + type: string + description: 著者のメールアドレス + authorIdInfo: + type: array + items: + type: object + properties: + idType: + type: string + description: 著者識別子の種類(例:weko, orcid) + authorId: + type: string + description: 著者識別子 + authorIdShowFlg: + type: boolean + description: 外部著者IDを自動入力するかどうか + authorNameInfo: + type: array + items: + type: object + properties: + language: + type: string + description: 著者姓名の記述言語(例:ja, en) + firstName: + type: string + description: 著者名 + familyName: + type: string + description: 著者姓 + nameFormat: + type: string + description: 著者名と著者姓の組み合わせ方 + nameShowFlg: + type: boolean + description: 氏名が自動入力されるかどうか + affiliationInfo: + type: array + items: + type: object + properties: + identifierInfo: + type: array + items: + type: object + properties: + affiliationId: + type: string + description: 所属機関識別子 + affiliationIdType: + type: string + description: 所属機関識別子の種類(例:ISNI, ROR) + identifierShowFlg: + type: boolean + description: 所属機関識別子が自動入力されるかどうか + affiliationNameInfo: + type: array + items: + type: object + properties: + affiliationName: + type: string + description: 所属機関名 + affiliationNameLang: + type: string + description: 所属機関の記述言語(例:ja, en) + affiliationNameShowFlg: + type: boolean + description: 所属機関名が自動入力されるかどうか + affiliationPeriodInfo: + type: array + items: + type: object + properties: + periodStart: + type: string + format: date + description: 所属開始日(yyyy-MM-dd形式) + periodEnd: + type: string + format: date + description: 所属終了日(yyyy-MM-dd形式) + securitySchemes: + OAuth2: + type: oauth2 + flows: + authorizationCode: + authorizationUrl: https://example.com/oauth/authorize + tokenUrl: https://example.com/oauth/token + scopes: + "author:search": Grants access to search authors + "author:create": Grants access to create authors + "author:update": Grants access to update authors + "author:delete": Grants access to delete authors \ No newline at end of file diff --git a/api/captcha_image.yaml b/api/captcha_image.yaml new file mode 100644 index 00000000..04b82003 --- /dev/null +++ b/api/captcha_image.yaml @@ -0,0 +1,177 @@ +openapi: 3.0.3 +info: + title: CAPTCHA画像用WEB API + version: "1.0" +tags: + - name: captcha + description: CAPTCHA +paths: + /api/{version}/captcha/image: + get: + tags: + - captcha + summary: CAPTCHA画像取得API + description: |- + CAPTCHA画像を生成し、取得するAPI + |ロール|動作| + |----|----| + |システム管理者|使用可能| + |リポジトリ管理者|使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー|使用可能| + |一般ユーザー|使用可能| + |ゲストユーザー|使用可能| + --- + #### サンプルコード + curl /api/v1/captcha/image + parameters: + - name: version + in: path + description: このAPIのバージョン情報 + required: true + schema: + type: string + example: v1 + - name: Accept-Language + in: header + description: 言語 + schema: + type: string + default: en + - name: pretty + in: query + description: レスポンスの整形 + schema: + type: boolean + default: false + responses: + "200": + description: CAPTCHA画像取得成功 + content: + application/json: + schema: + $ref: "#/components/schemas/SuccessGetBody" + "429": + description: |- + リクエスト制限 + - リミットレートを超えてアクセスされた + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + /api/{version}/captcha/validate: + post: + tags: + - captcha + summary: CAPTCHA結果検証API + description: |- + CAPTCHAの計算結果を検証するAPI + |ロール|動作| + |----|----| + |システム管理者|使用可能| + |リポジトリ管理者|使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー|使用可能| + |一般ユーザー|使用可能| + |ゲストユーザー|使用可能| + --- + #### サンプルコード + curl -X POST -H "Content-Type: application/json" /api/v1/captcha/validate \ + -d '{ "key": "aaa", "calculation_result": 20 }' + parameters: + - name: version + in: path + description: このAPIのバージョン情報 + required: true + schema: + type: string + example: v1 + - name: Accept-Language + in: header + description: 言語 + schema: + type: string + default: en + - name: pretty + in: query + description: レスポンスの整形 + schema: + type: boolean + default: false + requestBody: + required: true + content: + application/json: + schema: + type: object + properties: + key: + description: CAPTCHA画像に紐づくkey値 + type: string + example: "aaa" + calculation_result: + description: CAPTCHA画像の計算結果 + type: integer + example: 20 + required: + - "key" + - "calculation_result" + responses: + "200": + description: CAPTCHA検証成功 + content: + application/json: + schema: + $ref: "#/components/schemas/SuccessCaptchaPostBody" + "400": + description: |- + リクエスト形式不正 + - リクエストボディに必須項目がない + - 該当項目が空文字 + - CAPTCHA検証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/SuccessCaptchaPostBody" + "429": + description: |- + リクエスト制限 + - リミットレートを超えてアクセスされた + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + +components: + schemas: + SuccessGetBody: + type: object + properties: + key: + description: CAPTCHA画像に紐づくkey値 + type: string + example: "aaa" + image: + description: Base64でエンコードされたCAPTCHA画像 + type: string + example: "VGhpcyBpcyBiYXNlNjQgZW5jb2RlZCBkYXRhLiA=" + ttl: + description: CAPTCHA画像のTTL値(秒) + type: number + example: 600 + SuccessCaptchaPostBody: + type: object + properties: + authorization_token: + description: 検証成功時に生成されたトークン + type: string + example: "68680b0b249e005b2d422393a17a9a3373ab6320d0d1af4d443336c0854602d8" + ErrorBody: + type: object + properties: + status: + description: HTTPステータスコード + type: string + message: + description: エラーメッセージ + type: string diff --git a/api/indext_op.yaml b/api/indext_op.yaml new file mode 100755 index 00000000..d031355c --- /dev/null +++ b/api/indext_op.yaml @@ -0,0 +1,528 @@ +openapi: 3.0.3 +info: + title: インデックス情報取得用WEB API + version: "1.0" +tags: + - name: Index Management + description: インデックス管理 +paths: + /api/{version}/tree: + get: + tags: + - Index Management + summary: 全インデックス取得 + description: | + 全インデックスを取得する。 + |ロール |動作 | + | ---------------- | ------------------------ | + |システム管理者 |全インデックスを取得可能 | + |リポジトリ管理者 |全インデックスを取得可能 | + |コミュニティ管理者|管理下の全インデックスと公開インデックス取得可能| + |登録ユーザー |公開インデックスを取得可能| + |一般ユーザー |公開インデックスを取得可能| + |ゲストユーザー |取得不可 | + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: '#/components/schemas/indextree' + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '403': + description: 該当ユーザの権限で指定されたインデックスへのアクセスが許可されていない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '404': + description: 指定されたインデックスが存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '500': + description: サーバ内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/error" + security: + - OAuth2: ["index:read"] + + /api/{version}/tree/{index_id}: + get: + tags: + - Index Management + summary: インデックス取得 + description: | + 指定されたインデックスを取得する。 + その配下の全インデックスを取得する。 + |ロール |動作 | + | ---------------- | ------------------------ | + |システム管理者 |全インデックスを取得可能 | + |リポジトリ管理者 |全インデックスを取得可能 | + |コミュニティ管理者|管理下の全インデックスと公開インデックス取得可能| + |登録ユーザー |公開インデックスを取得可能| + |一般ユーザー |公開インデックスを取得可能| + |ゲストユーザー |取得不可 | + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + - name: index_id + in: path + required: true + schema: + type: string + description: 取得したいインデックスのID + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: '#/components/schemas/indextree' + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '403': + description: 該当ユーザの権限で指定されたインデックスへのアクセスが許可されていない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '404': + description: 指定されたインデックスが存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '500': + description: サーバ内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/error" + security: + - OAuth2: ["index:read"] + + + /api/{version}/tree/index: + post: + tags: + - Index Management + summary: インデックス登録 + description: | + インデックスを登録する。 + |ロール |動作 | + | ---------------- | ------------------------- | + |システム管理者 |全インデックス下に作成可能 | + |リポジトリ管理者 |全インデックス下に作成可能 | + |コミュニティ管理者|管理下の全インデックスの下に作成可能| + |登録ユーザー |利用不可 | + |一般ユーザー |利用不可 | + |ゲストユーザー |利用不可 | + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/index' + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: "#/components/schemas/index" + '400': + description: 必須の項目が記述されていない。リクエストボディが無い。 + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '500': + description: サーバ内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/error" + security: + - OAuth2: ["index:create"] + + + /api/{version}/tree/index/{index_id}: + put: + tags: + - Index Management + summary: インデックス変更 + description: | + 指定されたインデックスの情報を変更する。 + |ロール |動作 | + | ---------------- | ---------------------------- | + |システム管理者 |全インデックス更新可能 | + |リポジトリ管理者 |全インデックス更新可能 | + |コミュニティ管理者|管理下の全インデックス更新可能| + |登録ユーザー |利用不可 | + |一般ユーザー |利用不可 | + |ゲストユーザー |利用不可 | + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + - name: index_id + in: path + required: true + schema: + type: string + description: 更新したいインデックスのID + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/index' + responses: + '200': + description: 正常終了 + content: + application/json: + schema: + $ref: "#/components/schemas/index" + '400': + description: リクエストに不備がある + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '404': + description: 指定されたインデックスが存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '500': + description: サーバ内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/error" + security: + - OAuth2: ["index:update"] + + + delete: + tags: + - Index Management + summary: インデックス削除 + description: | + 指定されたインデックスを削除する。 + |ロール |動作 | + | ---------------- | ---------------------------- | + |システム管理者 |全インデックス削除可能 | + |リポジトリ管理者 |全インデックス削除可能 | + |コミュニティ管理者|管理下の全インデックス削除可能| + |登録ユーザー |利用不可 | + |一般ユーザー |利用不可 | + |ゲストユーザー |利用不可 | + parameters: + - name: version + in: path + required: true + schema: + type: string + description: APIのバージョン + - name: index_id + in: path + required: true + schema: + type: string + description: 削除したいインデックスのID + responses: + '204': + description: 正常終了 + '400': + description: リクエストに不備がある + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '401': + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '403': + description: 該当ユーザに必要なロールが付与されていない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '404': + description: 指定されたインデックスが存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/error" + '500': + description: サーバ内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/error" + security: + - OAuth2: ["index:delete"] + + +components: + schemas: + indextree: + type: object + properties: + index: + $ref: '#/components/schemas/indexdetail' + indexdetail: + type: object + description: インデックスツリー + properties: + browsing_group: + description: 表示グループ + type: string + example: "" + browsing_role: + description: 表示可能ロール + type: string + example: "3,-98,-99" + children: + description: 子インデックス情報 + type: array + items: + $ref: '#/components/schemas/indexdetail' + cid: + description: child id + type: integer + example: 1616224532673 + contribute_group: + description: contribute_group + type: string + example: "" + contribute_role: + description: contribute_role + type: string + example: "1,2,3,4,-98,-99" + coverpage_state: + description: coverpage_state flag + type: boolean + example: false + display_no: + description: 表示位置 + type: integer + example: 5 + emitLoadNextLevel: + description: emitLoadNextLevel + type: boolean + example: false + id: + description: child id + type: integer + example: 1616224532673 + index_link_enabled: + description: index_link flag + type: boolean + example: false + link_name: + description: link_name + type: string + example: "New Index" + more_check: + description: more_check flag + type: boolean + example: false + name: + description: index name + type: string + example: "Data Usage Report" + pid: + description: index id + type: integer + example: 0 + position: + description: 表示場所 + type: integer + example: -99 + public_date: + description: public_date (null or date) + type: string + example: null + public_state: + description: public_state flag + type: boolean + example: true + recursive_coverpage_check: + description: recursive_coverpage_check flag + type: boolean + example: false + settings: + description: settings + type: object + properties: + checked: + description: checked + type: boolean + example: false + isCollapsedOnInit: + description: isCollapsedOnInit + type: boolean + example: true + value: + description: index name + type: string + example: "Data Usage Report" + + index: + type: object + properties: + index: + $ref: '#/components/schemas/indexinfo' + indexinfo: + type: object + properties: + pid: + type: integer + description: 親インデックスのID + cid: + type: integer + description: 対象インデックスのID + example: 1623632832836 + position: + type: integer + description: 表示順位 + index_name: + type: string + description: 日本語のインデックス名 + index_name_english: + type: string + description: 英語のインデックス名 + index_link_name: + type: string + description: 日本語のインデックスリンク表示名 + index_link_name_english: + type: string + description: 英語のインデックスリンク表示名 + index_link_enabled: + type: boolean + description: インデックスリンクに表示するかどうか + more_check: + type: boolean + description: 子インデックスの初回表示個数を変更するかどうか + display_no: + type: integer + description: 子インデックスの初回表示個数 + harvest_public_state: + type: boolean + description: ハーベスト公開設定 + public_state: + type: boolean + description: 公開設定 + public_date: + type: string + description: 公開日 + coverpage_state: + type: boolean + description: DF Cover Page (JA) + browsing_role: + type: string + description: 閲覧権限のあるロール + contribute_role: + type: string + description: 投稿権限のあるロール + browsing_group: + type: string + description: 閲覧権限のあるグループ + contribute_group: + type: string + description: 投稿権限のあるグループ + value_english: + type: string + description: 英語のインデックス名 + + error: + type: object + properties: + code: + type: string + description: エラーコード + message: + type: string + description: エラーメッセージ + securitySchemes: + OAuth2: + type: oauth2 + flows: + authorizationCode: + authorizationUrl: https://example.com/oauth/authorize + tokenUrl: https://example.com/oauth/token + scopes: + "item:read": Grants access to read item + "file:read": Grants access to read file + "index:read": Grants access to read index + "index:create": Grants access to create index + "index:update": Grants access to update index + "index:delete": Grants access to delete index + "author:read": Grants access to read author + "statistics:read": Grants access to read statistics + "user:read": Grants access to read user diff --git a/api/item_search_rocrate.yaml b/api/item_search_rocrate.yaml new file mode 100644 index 00000000..afb63cd6 --- /dev/null +++ b/api/item_search_rocrate.yaml @@ -0,0 +1,823 @@ +openapi: 3.0.3 +info: + title: アイテム情報取得用WEB API + version: "1.0" +tags: + - name: item + description: アイテム情報 +paths: + /api/{version}/records: + get: + tags: + - item + summary: アイテム検索 + description: |- + アイテムを検索し、RO-Crate形式で返却する。 + 権限がないアイテムの情報は取得不可。 + |ロール|動作| + |----|----| + |システム管理者|使用可能| + |リポジトリ管理者|使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー|使用可能| + |一般ユーザー|使用可能| + |ゲストユーザー|使用可能| + --- + #### サンプルコード + curl /api/v1/records?creator=John + parameters: + - name: version + in: path + description: このAPIのバージョン情報 + required: true + schema: + type: string + example: v1 + - name: Accept-Language + in: header + description: 表示する言語の指定 + schema: + type: string + default: en + - name: Authorization + in: header + description: 認可情報 + schema: + type: string + example: Bearer アクセストークン + - name: q + in: query + description: 検索するキーワード + schema: + type: string + - name: search_type + in: query + description: |- + 検索する種類 + 0:フルテキスト検索 + 1:キーワード検索 + schema: + type: integer + enum: [0, 1] + - name: pretty + in: query + description: レスポンスの整形 + schema: + type: boolean + default: false + - name: page + in: query + description: 取得するページ番号 + schema: + type: integer + - name: cursor + in: query + description: ページネーションのカーソル(この次のデータから取得) + schema: + type: string + - name: size + in: query + description: 取得する検索結果の最大数 + schema: + type: integer + - name: sort + in: query + description: |- + ソートキー + |値|項目| + |----|----| + |controlnumber|ID| + |wtl|Title| + |creator|Creator| + |upd|Update date| + |createdate|Create date| + |pyear|Date of Issued| + |publish_date|Publish date| + |custom_sort|Custom sort| + |itemType|Item Type| + |relevance|Relevance| + |temporal|Temporal| + schema: + type: string + default: controlnumber + - name: title + in: query + description: タイトル + schema: + type: string + - name: exact_title_match + in: query + description: |- + タイトル完全一致検索を指定 + schema: + type: boolean + default: false + - name: creator + in: query + description: 作成者 + schema: + type: string + - name: subject + in: query + description: 件名 + schema: + type: string + - name: sbjscheme + in: query + description: 件名種別 + schema: + type: integer + - name: spatial + in: query + description: 地域 + schema: + type: string + - name: des + in: query + description: 内容記述 + schema: + type: string + - name: publisher + in: query + description: 出版者 + schema: + type: string + - name: cname + in: query + description: 寄与者 + schema: + type: string + - name: fd_attr + in: query + description: 日付種別 + schema: + type: string + - name: filedate_from + in: query + description: 日付下限 + schema: + type: string + - name: filedate_to + in: query + description: 日付上限 + schema: + type: string + - name: mimetype + in: query + description: フォーマット + schema: + type: string + - name: id + in: query + description: 識別子 + schema: + type: string + - name: id_attr + in: query + description: 識別子種別 + schema: + type: string + - name: srctitle + in: query + description: 雑誌名 + schema: + type: string + - name: type + in: query + description: 資源タイプ + schema: + type: integer + - name: lang + in: query + description: 言語 + schema: + type: string + - name: temporal + in: query + description: 期間 + schema: + type: string + - name: dategranted_from + in: query + description: 学位取得日下限 + schema: + type: string + - name: dategranted_to + in: query + description: 学位取得日上限 + schema: + type: string + - name: version + in: query + description: 著者版フラグ + schema: + type: string + - name: dissno + in: query + description: 学位番号 + schema: + type: string + - name: degreename + in: query + description: 学位名 + schema: + type: string + - name: dgname + in: query + description: 学位授与機関 + schema: + type: string + - name: wid + in: query + description: 作成者識別子 + schema: + type: integer + - name: iid + in: query + description: インデックスID + schema: + type: integer + - name: license + in: query + description: ライセンス + schema: + type: string + - name: textX (Xは1~10の整数) + in: query + description: 詳細検索条件設定でtextXに割り当てた項目の値 + schema: + type: string + responses: + "200": + description: 検索成功 + headers: + Cache-Control: + schema: + type: string + example: "no-cache, no-store, must-revalidate" + Pragma: + schema: + type: string + example: "no-cache" + Expires: + schema: + type: integer + example: 0 + content: + application/json: + schema: + $ref: "#/components/schemas/SearchResponse" + "400": + description: パラメータ不正 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "401": + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "500": + description: サーバー内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + security: + - OAuth2: ["item:read"] + + /api/{version}/records/{record_id}: + get: + tags: + - item + summary: アイテム詳細情報取得 + description: |- + アイテムの詳細情報を取得し、RO-Crate形式で返却する。 + 権限がないアイテムの情報は取得不可。 + |ロール|動作| + |----|----| + |システム管理者|使用可能| + |リポジトリ管理者|使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー|使用可能| + |一般ユーザー|使用可能| + |ゲストユーザー|使用可能| + --- + #### サンプルコード + curl /api/v1/records/1 + parameters: + - name: version + in: path + description: このAPIのバージョン情報 + required: true + schema: + type: string + example: v1 + - name: record_id + in: path + description: アイテムを一意に識別するID + required: true + schema: + type: number + example: 1 + - name: Accept-Language + in: header + description: 表示する言語の指定 + schema: + type: string + default: en + - name: Authorization + in: header + description: 認可情報 + schema: + type: string + example: Bearer アクセストークン + - name: If-None-Match + in: header + description: 1回目のレスポンスヘッダーETagに設定された値 + schema: + type: string + - name: If-Modified-Since + in: header + description: 1回目のレスポンスヘッダーLast-Modifiedに設定された値 + schema: + type: string + - name: pretty + in: query + description: レスポンスの整形 + schema: + type: boolean + default: false + responses: + "200": + description: 取得成功 + headers: + Etag: + description: アイテム情報のバージョンID + schema: + type: string + Last-Modified: + description: アイテム情報の更新日時 + schema: + type: string + content: + application/json: + schema: + $ref: "#/components/schemas/DetailResponse" + "304": + description: 前回取得時から更新なし + "400": + description: リクエスト不正 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "401": + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "403": + description: アクセス権限なし + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "404": + description: 指定したアイテムが存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "500": + description: サーバー内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + security: + - OAuth2: ["item:read"] + + /api/{version}/records/list: + post: + tags: + - item + summary: 検索結果一覧取得 + description: |- + 検索結果の一覧をTSV形式で一括取得する。 + 権限がないアイテムの情報は取得不可。 + |ロール|動作| + |----|----| + |システム管理者|使用可能| + |リポジトリ管理者|使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー|使用可能| + |一般ユーザー|使用可能| + |ゲストユーザー|使用可能| + --- + #### サンプルコード + curl -X POST -H "Content-Type: application/json" /api/v1/records/list?title=John \ + -d '[ { "id": 1, "name": { "i18n": "field", "en": "Field", "ja": "分野" }, "roCrateKey": "genre" }' + parameters: + - name: version + in: path + description: このAPIのバージョン情報 + required: true + schema: + type: string + example: v1 + - name: Accept-Language + in: header + description: 表示する言語の指定 + schema: + type: string + default: en + - name: Authorization + in: header + description: 認可情報 + schema: + type: string + example: Bearer アクセストークン + - name: q + in: query + description: 検索するキーワード + schema: + type: string + - name: search_type + in: query + description: |- + 検索する種類 + 0:フルテキスト検索 + 1:キーワード検索 + schema: + type: integer + enum: [0, 1] + - name: sort + in: query + description: |- + ソートキー + |値|項目| + |----|----| + |controlnumber|ID| + |wtl|Title| + |creator|Creator| + |upd|Update date| + |createdate|Create date| + |pyear|Date of Issued| + |publish_date|Publish date| + |custom_sort|Custom sort| + |itemType|Item Type| + |relevance|Relevance| + |temporal|Temporal| + schema: + type: string + default: controlnumber + - name: title + in: query + description: タイトル + schema: + type: string + - name: exact_title_match + in: query + description: |- + タイトル完全一致検索を指定 + schema: + type: boolean + default: false + - name: creator + in: query + description: 作成者 + schema: + type: string + - name: subject + in: query + description: 件名 + schema: + type: string + - name: sbjscheme + in: query + description: 件名種別 + schema: + type: integer + - name: spatial + in: query + description: 地域 + schema: + type: string + - name: des + in: query + description: 内容記述 + schema: + type: string + - name: publisher + in: query + description: 出版者 + schema: + type: string + - name: cname + in: query + description: 寄与者 + schema: + type: string + - name: fd_attr + in: query + description: 日付種別 + schema: + type: string + - name: filedate_from + in: query + description: 日付下限 + schema: + type: string + - name: filedate_to + in: query + description: 日付上限 + schema: + type: string + - name: mimetype + in: query + description: フォーマット + schema: + type: string + - name: id + in: query + description: 識別子 + schema: + type: string + - name: id_attr + in: query + description: 識別子種別 + schema: + type: string + - name: srctitle + in: query + description: 雑誌名 + schema: + type: string + - name: type + in: query + description: 資源タイプ + schema: + type: integer + - name: lang + in: query + description: 言語 + schema: + type: string + - name: temporal + in: query + description: 期間 + schema: + type: string + - name: dategranted_from + in: query + description: 学位取得日下限 + schema: + type: string + - name: dategranted_to + in: query + description: 学位取得日上限 + schema: + type: string + - name: version + in: query + description: 著者版フラグ + schema: + type: string + - name: dissno + in: query + description: 学位番号 + schema: + type: string + - name: degreename + in: query + description: 学位名 + schema: + type: string + - name: dgname + in: query + description: 学位授与機関 + schema: + type: string + - name: wid + in: query + description: 作成者識別子 + schema: + type: integer + - name: iid + in: query + description: インデックスID + schema: + type: integer + - name: license + in: query + description: ライセンス + schema: + type: string + - name: textX (Xは1~10の整数) + in: query + description: 詳細検索条件設定でtextXに割り当てた項目の値 + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/RecordsGetResponse" + responses: + "200": + description: 取得成功。ボディはTSVファイルのデータ + headers: + Content-Length: + schema: + type: integer + example: 1024 + ETag: + schema: + type: string + Last-Modified: + schema: + type: string + content: + All: + schema: + type: string + example: search_result.tsv + "400": + description: パラメータ不正 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "401": + description: OAuth2認証失敗 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "404": + description: 検索結果が存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "500": + description: サーバー内部のエラー + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + security: + - OAuth2: ["item:read"] + +components: + schemas: + SearchResponse: + type: object + properties: + total_results: + type: integer + description: 検索条件に一致した項目数 + example: 100 + count_results: + type: integer + description: このレスポンスに含まれる項目数 + example: 10 + cursor: + type: integer + description: 検索結果の最後の項目のカーソル + example: 1234567890000 + page: + type: integer + description: ページ番号 + example: 1 + search_results: + type: array + items: + $ref: "#/components/schemas/RocrateMetadata" + failures: + type: array + description: RO-Crateへの変換に失敗したアイテム一覧 + items: + $ref: "#/components/schemas/FailureItem" + RecordsGetResponse: + type: array + items: + type: object + properties: + "id": + type: integer + example: 1 + "name": + type: object + properties: + "i18n": + type: string + example: "field" + "en": + type: string + example: "Field" + "ja": + type: string + example: "分野" + "roCrateKey": + type: string + example: "genre" + + DetailResponse: + type: object + properties: + "rocrate": + $ref: "#/components/schemas/RocrateMetadata" + "metadata": + $ref: "#/components/schemas/ItemMetadata" + + RocrateMetadata: + type: object + properties: + "@context": + type: string + example: "https://w3id.org/ro/crate/1.1/context" + "@graph": + type: array + description: エンティティ一覧 + items: + type: object + example: + [ + { "@id": "./", "@type": "Dataset", "headline": ["sample data"] }, + { + "@id": "ro-crate-metadata.json", + "@type": "CreativeWork", + "conformsTo": { "@id": "https://w3id.org/ro/crate/1.1" }, + "about": { "@id": "./" }, + }, + { + "@id": "sample_filename_01", + "@type": "File", + "accessMode": "open_access", + "dateCreated": "2024-01-01", + "name": ["sample_filename_01"], + }, + { + "@id": "resource_type/", + "@type": "Dataset", + "name": ["data paper"], + "url": ["http://purl.org/coar/resource_type/c_beb9"], + }, + ] + ItemMetadata: + type: object + example: + { + "Title": [{ "Title": "sample data", "Language": "ja" }], + "File Information": + [{ "FileName": "sample_filename_01", "Access": "open_access" }], + "Resource Type": + [ + { + "Resource Type Identifier": "http://purl.org/coar/resource_type/c_beb9", + "Resource Type": "data paper", + }, + ], + } + FailureItem: + type: object + properties: + "id": + type: string + example: "1" + "title": + type: array + items: + type: string + example: ["item_title"] + "item_type": + type: string + example: "item_type_name" + ErrorBody: + type: object + properties: + status: + type: string + description: ステータスコード + message: + type: string + description: エラーメッセージ + securitySchemes: + OAuth2: + type: oauth2 + flows: + authorizationCode: + authorizationUrl: https://example.com/oauth/authorize + tokenUrl: https://example.com/oauth/token + scopes: + "item:read": Grants access to read item + "file:read": Grants access to read file + "index:read": Grants access to read index + "ranking:read": Grants access to read ranking + "user:read": Grants access to read user + "author:read": Grants access to read author diff --git a/api/request_mail.yaml b/api/request_mail.yaml new file mode 100644 index 00000000..d6365e6a --- /dev/null +++ b/api/request_mail.yaml @@ -0,0 +1,157 @@ +openapi: 3.0.3 +info: + title: リクエストメール送信用WEB API + version: "1.0" +tags: + - name: request mail + description: リクエストメール +paths: + /api/{version}/records/{pid}/request-mail: + post: + tags: + - request mail + summary: リクエストメール送信API + description: |- + リクエストメールの送信が有効の場合、リクエストメールを送信する。 + |ロール|動作| + |----|----| + |システム管理者|使用可能| + |リポジトリ管理者|使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー|使用可能| + |一般ユーザー|使用可能| + |ゲストユーザー|使用可能| + --- + #### サンプルコード + curl -X POST -H "Content-Type: application/json" /api/v1/records/1/request-mail \ + -d '{ "from": "contributor@example.org", \ + "subject": "About request mail", \ + "message": "this is message of request mail.", \ + "key": "aaa", \ + "authorization_token": "68680b0b249e005b2d422393a17a9a3373ab6320d0d1af4d443336c0854602d8" }' + + parameters: + - name: version + in: path + description: このAPIのバージョン情報 + required: true + schema: + type: string + example: v1 + - name: pid + in: path + description: レコードを一意に識別するID + required: true + schema: + type: integer + example: 1 + - name: Accept-Language + in: header + description: 言語 + schema: + type: string + default: en + - name: pretty + in: query + description: レスポンスの整形 + schema: + type: boolean + default: false + requestBody: + required: true + content: + application/json: + schema: + type: object + properties: + from: + type: string + example: "contributor@example.org" + subject: + type: string + example: "About request mail" + message: + type: string + example: "this is message of request mail." + key: + description: CAPTCHA画像に紐づくkey値 + type: string + example: "aaa" + authorization_token: + description: 検証成功時に生成されたトークン + type: string + example: "68680b0b249e005b2d422393a17a9a3373ab6320d0d1af4d443336c0854602d8" + required: + - "from" + - "subject" + - "message" + - "key" + - "authorization_token" + responses: + "200": + description: リクエストメール送信成功 + content: + application/json: + schema: + $ref: "#/components/schemas/SuccessBody" + "400": + description: |- + リクエスト形式不正 + - リクエストボディに必須項目がない + - 該当項目が空文字 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "401": + description: |- + 認証失敗 + - authorization_tokenが取得できない + - authorization_tokenの値が間違っている + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "404": + description: |- + 存在しない + - アイテムが存在しない + - リクエスト送信先が存在しない + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + "429": + description: |- + リクエスト制限 + - リミットレートを超えてアクセスされた + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorBody" + +components: + schemas: + SuccessBody: + type: object + properties: + from: + description: 送信者のメールアドレス + example: "contributor@example.org" + subject: + description: リクエストメールの件名 + type: string + example: "About request mail" + message: + description: リクエストメールの内容 + type: string + example: "this is message of request mail." + ErrorBody: + type: object + properties: + status: + description: HTTPステータスコード + type: string + message: + description: エラーメッセージ + type: string diff --git a/api/sword.yaml b/api/sword.yaml new file mode 100644 index 00000000..843d1dc3 --- /dev/null +++ b/api/sword.yaml @@ -0,0 +1,719 @@ +openapi: 3.0.3 +info: + title: SWORD API + version: "1.0" +tags: + - name: service_document + description: SWORD + - name: deposit + description: SWORD +paths: + /api/service-document: + get: + tags: + - service_document + summary: サービスドキュメント取得機能 + description: |- + リポジトリのサービスドキュメントを取得 + |ロール |動作 | + | ---------------- | ------ | + |システム管理者 |使用可能| + |リポジトリ管理者 |使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー |使用可能| + |一般ユーザー |使用可能| + |ゲストユーザー |使用不可| + parameters: + - name: Authorization + in: header + required: true + description: Bearer アクセストークン + schema: + type: string + - name: On-Behalf-Of + in: header + required: false + description: 代理投稿ユーザーのメールアドレスまたはePPN + schema: + type: string + responses: + "200": + description: サーバーのサービスドキュメントを返す + content: + application/json: + schema: + $ref: "#/components/schemas/ServiceDocument" + "400": + description: リクエスト内容に何らかの不備がある場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "401": + description: リクエストでAuthorization ヘッダーが提供されない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "403": + description: 認証に失敗した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "412": + description: サーバー側がOn-Behalf-Of をサポートしていないにもかかわらず、リクエストでOn-Behalf-Of ヘッダーが提供された場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "500": + description: サーバー内部エラーが発生した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + post: + tags: + - service_document + summary: アイテム登録機能 + description: |- + WEKO3の一括登録フォーマットを用いて、アイテムを登録 + |ロール |動作 | + | ---------------- | ------ | + |システム管理者 |使用可能| + |リポジトリ管理者 |使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー |使用不可| + |一般ユーザー |使用不可| + |ゲストユーザー |使用不可| + parameters: + - name: Authorization + in: header + required: true + description: Bearer アクセストークン + schema: + type: string + - name: On-Behalf-Of + in: header + required: false + description: 代理投稿ユーザーのメールアドレスまたはePPN + schema: + type: string + - name: Content-Disposition + in: header + required: true + description: リクエストボディに付加したファイルのファイル名 + schema: + type: string + - name: Content-Length + in: header + required: false + description: リクエストボディのサイズ + schema: + type: integer + - name: Content-Type + in: header + required: true + description: リクエストボディにファイルを付加するため "multipart/form-data" + schema: + type: string + - name: Packaging + in: header + required: true + description: パッケージフォーマット + schema: + type: string + enum: + - http://purl.org/net/sword/3.0/package/Binary + - http://purl.org/net/sword/3.0/package/SimpleZip + - http://purl.org/net/sword/3.0/package/SWORDBagIt + - name: Digest + in: header + required: false + description: リクエストボディのダイジェスト値 + schema: + type: string + # enum: [SHA-256] + example: SHA-256=e0Pke8qpzEkkGjPE1RoSqNw7qu3tH4... + responses: + "201": + description: 登録されたアイテムのステータスドキュメントを返す + content: + application/json: + schema: + $ref: "#/components/schemas/StatusDocument" + "202": + description: 登録するアイテムのステータスドキュメントを返す。
登録のリクエストを受け付け、アクティビティが承認待ちとなっていることを示す + content: + application/json: + schema: + $ref: "#/components/schemas/StatusDocument" + "400": + description: リクエスト内容に何らかの不備がある場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "401": + description: リクエストでAuthorization ヘッダーが提供されない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "403": + description: 認証に失敗した場合、認証したOAuthトークンが「deposit:write」スコープを持っていない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "404": + description: 登録されたアイテムが見つからない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "412": + description: サーバー側がOn-Behalf-Of をサポートしていないにもかかわらず、リクエストでOn-Behalf-Of ヘッダーーが提供された場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "413": + description: 送信されたファイルのサイズがサーバーに設定されたmaxUploadSizeを超えている場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "415": + description: ヘッダーまたはボディに付加されたファイルのContent-Typeがサーバー側でサポートされていない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "500": + description: サーバー内部エラーが発生した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + /api/deposit/{recid}: + get: + tags: + - deposit + summary: ステータスドキュメント取得機能 + description: |- + recidを指定してリポジトリ上に存在するアイテムのステータスドキュメントを取得 + |ロール |動作 | + | ---------------- | ------ | + |システム管理者 |使用可能| + |リポジトリ管理者 |使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー |使用可能| + |一般ユーザー |使用可能| + |ゲストユーザー |使用不可| + parameters: + - name: Authorization + in: header + required: true + description: Bearer アクセストークン + schema: + type: string + - name: On-Behalf-Of + in: header + required: false + description: 代理投稿ユーザーのメールアドレスまたはePPN + schema: + type: string + - name: recid + in: path + required: true + description: レコードID + schema: + type: integer + example: 20000021 + responses: + "200": + description: 指定されたアイテムのステータスドキュメントを返す + content: + application/json: + schema: + $ref: "#/components/schemas/StatusDocument" + "400": + description: リクエスト内容に何らかの不備がある場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "401": + description: リクエストでAuthorization ヘッダーが提供されない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "403": + description: 認証に失敗した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "404": + description: 指定したrecidに該当するアイテムが存在しない(削除されている)場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "412": + description: サーバー側がOn-Behalf-Of をサポートしていないにもかかわらず、リクエストでOn-Behalf-Of ヘッダーが提供された場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "500": + description: サーバー内部エラーが発生した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + post: + tags: + - deposit + summary: アイテム更新機能 + description: |- + WEKO3の一括登録フォーマットを用いて、アイテムを更新 + |ロール |動作 | + | ---------------- | ------ | + |システム管理者 |使用可能| + |リポジトリ管理者 |使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー |使用不可| + |一般ユーザー |使用不可| + |ゲストユーザー |使用不可| + parameters: + - name: Authorization + in: header + required: true + description: Bearer アクセストークン + schema: + type: string + - name: On-Behalf-Of + in: header + required: false + description: 代理投稿ユーザーのメールアドレスまたはePPN + schema: + type: string + - name: Content-Disposition + in: header + required: true + description: リクエストボディに付加したファイルのファイル名 + schema: + type: string + - name: Content-Length + in: header + required: false + description: リクエストボディのサイズ + schema: + type: integer + - name: Content-Type + in: header + required: true + description: リクエストボディにファイルを付加するため "multipart/form-data" + schema: + type: string + - name: Packaging + in: header + required: true + description: パッケージフォーマット + schema: + type: string + enum: + - http://purl.org/net/sword/3.0/package/Binary + - http://purl.org/net/sword/3.0/package/SimpleZip + - http://purl.org/net/sword/3.0/package/SWORDBagIt + - name: Digest + in: header + required: false + description: リクエストボディのダイジェスト値 + schema: + type: string + # enum: [SHA-256] + example: SHA-256=e0Pke8qpzEkkGjPE1RoSqNw7qu3tH4... + responses: + "200": + description: 更新されたアイテムのステータスドキュメントを返す + content: + application/json: + schema: + $ref: "#/components/schemas/StatusDocument" + "202": + description: 更新するアイテムのステータスドキュメントを返す。
更新のリクエストを受け付け、アクティビティが承認待ちとなっていることを示す + content: + application/json: + schema: + $ref: "#/components/schemas/StatusDocument" + "400": + description: リクエスト内容に何らかの不備がある場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "401": + description: リクエストでAuthorization ヘッダーが提供されない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "403": + description: 認証に失敗した場合、認証したOAuthトークンが「deposit:write」スコープを持っていない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "404": + description: 登録されたアイテムが見つからない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "412": + description: サーバー側がOn-Behalf-Of をサポートしていないにもかかわらず、リクエストでOn-Behalf-Of ヘッダーーが提供された場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "413": + description: 送信されたファイルのサイズがサーバーに設定されたmaxUploadSizeを超えている場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "415": + description: ヘッダーまたはボディに付加されたファイルのContent-Typeがサーバー側でサポートされていない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "500": + description: サーバー内部エラーが発生した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + delete: + tags: + - deposit + summary: アイテム削除機能 + description: |- + recidを指定してアイテムを削除 + |ロール |動作 | + | ---------------- | ------ | + |システム管理者 |使用可能| + |リポジトリ管理者 |使用可能| + |コミュニティ管理者|使用可能| + |登録ユーザー |使用不可| + |一般ユーザー |使用不可| + |ゲストユーザー |使用不可| + parameters: + - name: Authorization + in: header + required: true + description: Bearer アクセストークン + schema: + type: string + - name: On-Behalf-Of + in: header + required: false + description: 代理投稿ユーザーのメールアドレスまたはePPN + schema: + type: string + - name: recid + in: path + required: true + description: レコードID + schema: + type: integer + example: 20000021 + responses: + "202": + description: 空のレスポンスを返す。 削除のリクエストを受け付け、アクティビティが承認待ちとなっていることを示す + headers: + Location: + description: 削除アクティビティ詳細画面のURL + schema: + type: string + example: "[WEKO3のURL]/workflow/activity/detail/[アクティビティID]" + "204": + description: 空のレスポンスを返す。削除に成功したことを示す + headers: + Location: + description: ワークフローを使用した場合、削除アクティビティ詳細画面のURL + schema: + type: string + example: "[WEKO3のURL]/workflow/activity/detail/[アクティビティID]" + "400": + description: リクエスト内容に何らかの不備がある場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "401": + description: リクエストでAuthorization ヘッダーが提供されない場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "403": + description: 認証に失敗した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "404": + description: 指定したrecidに該当するアイテムが存在しない(削除されている)場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "412": + description: サーバー側がOn-Behalf-Of をサポートしていないにもかかわらず、リクエストでOn-Behalf-Of ヘッダーが提供された場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + "500": + description: サーバー内部エラーが発生した場合 + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorDocument" + +components: + schemas: + ServiceDocument: + type: object + properties: + "@context": + type: string + enum: ["https://swordapp.github.io/swordv3/swordv3.jsonld"] + "@id": + type: string + example: "[WEKO3のURL]/sword/service-document" + "@type": + type: string + enum: ["ServiceDocument"] + accepted: + type: array + items: + type: string + example: [] + acceptArchiveFormat: + type: array + items: + type: string + example: [] + acceptDeposits: + type: boolean + example: True + acceptMetadata: + type: array + items: + type: string + example: [] + acceptPackaging: + type: array + items: + type: string + example: [] + authentication: + type: array + items: + type: string + example: [] + byReferenceDeposit: + type: boolean + example: False + collectionPolicy: + type: object + properties: + "collectionPolicy.@id": + type: string + "collectionPolicy.description": + type: string + example: {} + "dc:title": + type: string + "dcterms:abstract": + type: string + example: "" + digest: + type: array + items: + type: string + example: [] + maxAssembledSize: + type: integer + example: 300000 + maxByReferenceSize: + type: integer + example: 300000 + maxSegmentSize: + type: integer + maxSegments: + type: integer + example: 300000 + maxUploadSize: + type: integer + example: 300000 + onBehalfOf: + type: boolean + example: True + root: + type: string + services: + type: array + items: + type: string + example: [] + staging: + type: string + example: [] + stagingMaxIdle: + type: integer + example: 300000 + treatment: + type: object + properties: + "treatment.@id": + type: string + "treatment.description": + type: string + version: + type: string + example: "http://purl.org/net/sword/3.0" + StatusDocument: + type: object + properties: + "@context": + type: string + enum: ["https://swordapp.github.io/swordv3/swordv3.jsonld"] + "@id": + type: string + example: "[WEKO3のURL]/sword/deposit/[アイテムのrecid]" + "@type": + type: string + enum: ["StatusDocument"] + actions: + type: object + properties: + "actions. appendFiles": + type: boolean + "actions.appendMetadata": + type: boolean + "actions. deleteFiles": + type: boolean + "actions. deleteMetadata": + type: boolean + "actions. deleteObject": + type: boolean + "actions. getFiles": + type: boolean + "actions. getMetadata": + type: boolean + "actions. replaceFiles": + type: boolean + "actions. replaceMetadata": + type: boolean + eTag: + type: string + example: "[アイテムのリビジョン番号]" + fileSet: + type: object + properties: + "fileSet.@id": + type: string + "fileSet.eTag": + type: string + links: + type: array + items: + type: object + properties: + "links[].@id": + type: string + "links[].byReference": + type: string + "links[].contentType": + type: string + "links[].dcterms:isReplacedBy": + type: string + "links[].dcterms:relation": + type: string + "links[].dcterms:replaces": + type: string + "links[].depositedBy": + type: string + "links[].depositedOn": + type: string + "links[].depositedOnBehalfOf": + type: string + "links[].derivedFrom": + type: string + "links[].eTag": + type: string + "links[].log": + type: string + "links[].packaging": + type: string + "links[].rel": + type: string + enum: + - alternate + - packaging + - depositedOn + - depositedOnBehalfOf + - status + - log + - dcterms:relation + - dcterms:replaces + - dcterms:isReplacedBy + - versionReplaced + - eTag + - byReference + - derivedFrom + - metadataFormat + "links[].status": + type: string + "links[].versionReplacedOn": + type: string + metadata: + type: object + properties: + "metadata.@id": + type: string + "metadata.eTag": + type: string + service: + type: string + state: + type: array + items: + type: object + properties: + "state.@id": + type: string + "state.description": + type: string + ErrorDocument: + type: object + properties: + "@context": + type: string + enum: ["https://swordapp.github.io/swordv3/swordv3.jsonld"] + "@type": + type: string + error: + type: string + log: + type: string + timestamp: + type: string diff --git a/docs/README.md b/docs/README.md index 407c1a91..2a9852d7 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,18 +1,25 @@ +# WEKO3 Documents -npx honkit init admin_manual -npx honkit serve -npx honkit build +## ビルド方法 -sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin version=4.23.0 +honkitと必要なプラグインをインストールする。 -npx honkit pdf . ../ADMIN.pdf +``` +npm install +``` + + + +``` +npx honkit build manuals/ADMIN/base/ manuals/ADMIN/html +``` + +build user manual. +``` +npx honkit build manuals/USER/base/ manuals/USER/html +``` ``` -npx honkit pdf spec/base spec/pdf/spec.pdf npx honkit build spec/base spec/html -npx honkit pdf manuals/ADMIN/base manuals/ADMIN/pdf/admin.pdf -npx honkit html manuals/ADMIN/base manuals/ADMIN/html -npx honkit pdf manuals/USER/base manuals/ADMIN/pdf/admin.pdf -npx honkit html manuals/USER/base manuals/ADMIN/html ``` \ No newline at end of file diff --git a/docs/images/tables.pu b/docs/images/tables.pu new file mode 100644 index 00000000..8c5ee0fa --- /dev/null +++ b/docs/images/tables.pu @@ -0,0 +1,230 @@ +@startuml + +entity access_actionsroles{ + *id: integer + action: character varying(80) + *exclude: boolean + argument: character varying(255) + *role_id: integer +} + +entity access_actionssystemroles{ + *id: integer + action: character varying(80) + *exclude: boolean + argument: character varying(255) + *role_name: character varying(40) +} + + +entity access_actionsusers{ + *id:integer + action: character varying(80) + *exclude: boolean + argument: character varying(255) + *user_id: integer +} + +entity accounts_group{ + *id: integer + *name: character varying(255) + description:text + *is_managed: boolean + *privacy_policy: character varying(1) + *subscription_policy:character varying(1) + *created:timestamp without time zone + *modified:timestamp without time zone +} + +entity accounts_group_admin{ + *id:integer + *group_id:integer + admin_type:character varying(255) + *admin_id:integer +} + +entity accounts_group_members{ + *user_id: integer + *group_id: integer + *state: character varying(1) + *created: timestamp without time zone + *modified: timestamp without time zone +} + +entity accounts_role{ + id: integer + name: character varying(80) + description: character varying(255) +} + +entity accounts_user{ + *id: integer + email: character varying(255) + password: character varying(255) + active: boolean + confirmed_at: timestamp without time zone + last_login_at: timestamp without time zone + current_login_at: timestamp without time zone + last_login_ip: character varying(50) + current_login_ip: character varying(50) + login_count: integer +} + +entity accounts_user_session_activity{ + *created: timestamp without time zone + *updated: timestamp without time zone + sid_s | character varying(255) | | not null | + user_id | integer | | | + ip | character varying(80) | | | + country | character varying(3) | | | + browser | character varying(80) | | | + browser_version | character varying(30) | | | + os | character varying(80) | | | + device | character varying(80) | | | +} + +entity accounts_userrole{} +entity admin_lang_settings{} +entity admin_settings{} +entity alembic_version{} +entity api_certificate{} +entity authors{} +entity authors_affiliation_settings{} +entity authors_prefix_settings{} +entity billing_permission{} +entity changelist_indexes{} +entity communities_community{} +entity communities_community_record{} +entity communities_featured_community{} +entity doi_identifier{} +entity facet_search_setting{} +entity feedback_email_setting{} +entity feedback_mail_failed{} +entity feedback_mail_history{} +entity feedback_mail_list{} +entity file_metadata{} +entity file_metadata_version{} +entity file_onetime_download{} +entity file_permission{} +entity file_secret_download{} +entity files_bucket{} +entity files_buckettags{} +entity files_files{} +entity files_location{} +entity files_multipartobject{} +entity files_multipartobject_part{} +entity files_object{} +entity files_objecttags{} +entity guest_activity{} +entity harvest_logs{} +entity harvest_settings{} +entity index{} +entity index_style{} +entity institution_name{} + +entity item_metadata { + *created: timestamp without time zone + *updated: timestamp without time zone + *id: uuid + item_type_id: integer + json: jsonb + *version_id: integer +} +entity item_metadata_version{} +entity item_reference{} +entity item_type{} +entity item_type_edit_history{} +entity item_type_mapping{} +entity item_type_mapping_version{} +entity item_type_name{} +entity item_type_property{} +entity item_type_version{} +entity journal{} +entity journal_export_processing{} +entity loganalysis_restricted_crawler_list{} +entity loganalysis_restricted_ip_address{} +entity mail_config{} +entity oaiharvester_configs{} +entity oaiserver_identify{} +entity oaiserver_schema{} +entity oaiserver_schema_version{} +entity oaiserver_set{} +entity oauth2server_client{} +entity oauth2server_token{} +entity oauthclient_remoteaccount{} +entity oauthclient_remotetoken{} +entity oauthclient_useridentity{} +entity pdfcoverpage_set{} +entity pidrelations_pidrelation{} +entity pidstore_pid{} +entity pidstore_recid{} +entity pidstore_redirect{} +entity ranking_settings{} +entity records_buckets{} +entity records_metadata{} +entity records_metadata_version{} +entity resourcelist_indexes{} +entity resync_indexes{} +entity resync_logs{} +entity search_management{} +entity session_lifetime{} +entity shibboleth_user{} +entity shibboleth_userrole{} +entity site_info{} +entity sitelicense_info{} +entity sitelicense_ip_address{} +entity stats_aggregation{} +entity stats_bookmark{} +entity stats_email_address{} +entity stats_events{} +entity stats_events_202401{} +entity stats_events_202402{} +entity stats_events_202403{} +entity stats_events_202404{} +entity stats_events_202405{} +entity stats_events_202406{} +entity stats_events_202407{} +entity stats_events_202408{} +entity stats_events_202409{} +entity stats_events_202410{} +entity stats_events_202411{} +entity stats_events_202412{} +entity stats_events_202501{} +entity stats_events_202502{} +entity stats_events_202503{} +entity stats_events_202504{} +entity stats_events_202505{} +entity stats_events_202506{} +entity stats_events_202507{} +entity stats_events_202508{} +entity stats_events_202509{} +entity stats_events_202510{} +entity stats_events_202511{} +entity stats_events_202512{} +entity stats_report_target{} +entity stats_report_unit{} +entity transaction{} +entity userprofiles_userprofile{} +entity widget_design_page{} +entity widget_design_page_multi_lang_data{} +entity widget_design_setting{} +entity widget_items{} +entity widget_multi_lang_data{} +entity widget_type{} +entity workflow_action{} +entity workflow_action_feedbackmail{} +entity workflow_action_history{} +entity workflow_action_identifier{} +entity workflow_action_journal{} +entity workflow_action_status{} +entity workflow_activity{} +entity workflow_activity_action{} +entity workflow_activity_count{} +entity workflow_flow_action{} +entity workflow_flow_action_role{} +entity workflow_flow_define{} +entity workflow_userrole{} +entity workflow_workflow{} + + +@enduml \ No newline at end of file diff --git a/docs/manuals/ADMIN/base/README.md b/docs/manuals/ADMIN/base/README.md index 20024d46..e222147e 100644 --- a/docs/manuals/ADMIN/base/README.md +++ b/docs/manuals/ADMIN/base/README.md @@ -2,7 +2,7 @@ (コミュニティ管理者、リポジトリ管理者、およびシステム管理者) -v1.0.7b +v1.1.0 ## はじめに @@ -61,23 +61,35 @@ OAI-PMHの管理に関する操作手順を説明しています。 Resource Syncの管理に関する操作手順を説明しています。 -第12章 レコード管理 +第12章 SWORD API設定 + +SWORD APIの管理に関する操作手順を説明しています。 + +第13章 レコード管理 レコードの管理に関する操作手順を説明しています。 -第13章 ファイル管理 +第14章 ファイル管理 ファイルの管理に関する操作手順を説明しています。 -第14章 ユーザ管理 +第15章 ユーザ管理 ユーザの管理に関する操作手順を説明しています。 -第15章 システム設定 +第16章 システム設定 システム設定に関する操作手順を説明しています。 -第16章 ユーザカウントの管理 +第17章 ログ管理 + +ログの管理に関する操作手順を説明しています。 + +第18章 メンテナンス + +メンテナンスに関する操作手順を説明しています。 + +第19章 ユーザカウントの管理 ユーザカウントの管理に関する操作手順を説明しています。 @@ -159,6 +171,8 @@ Resource Syncの管理に関する操作手順を説明しています。 [2.4.2 システムが付与したアイテムタイプをマッピングする 58](#システムが付与したアイテムタイプをマッピングする) +[2.5 JSON-LDのマッピングを設定する](#json-ldのマッピングを設定する) + [3. アイテム管理 61](#アイテム管理) [3.1 ライセンスまたはエンバーゴを一括更新する 62](#ライセンスまたはエンバーゴを一括更新する) @@ -355,255 +369,271 @@ Resource Syncの管理に関する操作手順を説明しています。 [11.3.4 Resyncを削除する 258](#resyncを削除する) -[12. レコード管理 259](#レコード管理) +[12. SWORD API 500](#swordapi設定) + +[12.1 TSV/CSV用の設定を行う](#tsvcsv用の設定を行う) + +[12.2 XML用の設定を行う](#xml用の設定を行う) + +[12.3 JSON-LD用設定を作成する 501](#json-ld用の設定を作成する) + +[12.4 JSON-LD用設定を編集する 502](#json-ld用設定を編集する) + +[12.5 JSON-LD用設定を削除する 503](#json-ld用設定を削除する) + +[13. レコード管理 259](#レコード管理) -[12.1 Persistent Identifierを参照する 260](#persistent-identifierを参照する) +[13.1 Persistent Identifierを参照する 260](#persistent-identifierを参照する) -[12.2 Record Metadataを管理する 261](#record-metadataを管理する) +[13.2 Record Metadataを管理する 261](#record-metadataを管理する) -[12.2.1 Record Metadataを参照する 261](#record-metadataを参照する) +[13.2.1 Record Metadataを参照する 261](#record-metadataを参照する) -[12.2.2 Record Metadataを削除する 261](#record-metadataを削除する) +[13.2.2 Record Metadataを削除する 261](#record-metadataを削除する) -[13. ファイル管理 263](#ファイル管理) +[14. ファイル管理 263](#ファイル管理) -[13.1 Bucketを管理する 264](#bucketを管理する) +[14.1 Bucketを管理する 264](#bucketを管理する) -[13.1.1 Bucketを参照する 264](#bucketを参照する) +[14.1.1 Bucketを参照する 264](#bucketを参照する) -[13.1.2 Bucketを作成する 264](#bucketを作成する) +[14.1.2 Bucketを作成する 264](#bucketを作成する) -[13.1.3 Bucketを編集する 266](#bucketを編集する) +[14.1.3 Bucketを編集する 266](#bucketを編集する) -[13.2 File Instanceを管理する 267](#file-instanceを管理する) +[14.2 File Instanceを管理する 267](#file-instanceを管理する) -[13.2.1 File Instanceを参照する 267](#file-instanceを参照する) +[14.2.1 File Instanceを参照する 267](#file-instanceを参照する) -[13.2.2 ファイルの固定性をチェックする 268](#ファイルの固定性をチェックする) +[14.2.2 ファイルの固定性をチェックする 268](#ファイルの固定性をチェックする) -[13.3 Locationを管理する 269](#locationを管理する) +[14.3 Locationを管理する 269](#locationを管理する) -[13.3.1 Locationを参照する 269](#locationを参照する) +[14.3.1 Locationを参照する 269](#locationを参照する) -[13.3.2 Locationを作成する 270](#locationを作成する) +[14.3.2 Locationを作成する 270](#locationを作成する) -[13.3.3 Locationを編集する 271](#locationを編集する) +[14.3.3 Locationを編集する 271](#locationを編集する) -[13.3.4 Locationを削除する 272](#locationを削除する) +[14.3.4 Locationを削除する 272](#locationを削除する) -[13.4 Multipart Objectを管理する 273](#multipart-objectを管理する) +[14.4 Multipart Objectを管理する 273](#multipart-objectを管理する) -[13.4.1 Multipart Objectを参照する 273](#multipart-objectを参照する) +[14.4.1 Multipart Objectを参照する 273](#multipart-objectを参照する) -[13.5 Object Versionを管理する 274](#object-versionを管理する) +[14.5 Object Versionを管理する 274](#object-versionを管理する) -[13.5.1 Object Versionを参照する 274](#object-versionを参照する) +[14.5.1 Object Versionを参照する 274](#object-versionを参照する) -[14. ユーザ管理 275](#ユーザ管理) +[15. ユーザ管理 275](#ユーザ管理) -[14.1 Access: Roles 276](#access-roles) +[15.1 Access: Roles 276](#access-roles) -[14.1.1 ロールのアクションを参照する 276](#ロールのアクションを参照する) +[15.1.1 ロールのアクションを参照する 276](#ロールのアクションを参照する) -[14.1.2 ロールにアクションを追加する 277](#ロールにアクションを追加する) +[15.1.2 ロールにアクションを追加する 277](#ロールにアクションを追加する) -[14.1.3 ロールのアクションを変更する 278](#ロールのアクションを変更する) +[15.1.3 ロールのアクションを変更する 278](#ロールのアクションを変更する) -[14.1.4 ロールのアクションを削除する 279](#ロールのアクションを削除する) +[15.1.4 ロールのアクションを削除する 279](#ロールのアクションを削除する) -[14.2 Access: System Roles 281](#access-system-roles) +[15.2 Access: System Roles 281](#access-system-roles) -[14.2.1 システムロールのアクションを参照する 281](#システムロールのアクションを参照する) +[15.2.1 システムロールのアクションを参照する 281](#システムロールのアクションを参照する) -[14.2.2 システムロールにアクションを追加する 282](#システムロールにアクションを追加する) +[15.2.2 システムロールにアクションを追加する 282](#システムロールにアクションを追加する) -[14.2.3 システムロールのアクションを変更する 283](#システムロールのアクションを変更する) +[15.2.3 システムロールのアクションを変更する 283](#システムロールのアクションを変更する) -[14.2.4 システムロールのアクションを削除する 284](#システムロールのアクションを削除する) +[15.2.4 システムロールのアクションを削除する 284](#システムロールのアクションを削除する) -[14.3 Access: Users 286](#access-users) +[15.3 Access: Users 286](#access-users) -[14.3.1 ユーザのアクションを参照する 286](#ユーザのアクションを参照する) +[15.3.1 ユーザのアクションを参照する 286](#ユーザのアクションを参照する) -[14.3.2 ユーザにアクションを追加する 287](#ユーザにアクションを追加する) +[15.3.2 ユーザにアクションを追加する 287](#ユーザにアクションを追加する) -[14.3.3 ユーザのアクションを変更する 288](#ユーザのアクションを変更する) +[15.3.3 ユーザのアクションを変更する 288](#ユーザのアクションを変更する) -[14.3.4 ユーザのアクションを削除する 289](#ユーザのアクションを削除する) +[15.3.4 ユーザのアクションを削除する 289](#ユーザのアクションを削除する) -[14.4 Linked account identitiesを管理する 291](#linked-account-identitiesを管理する) +[15.4 Linked account identitiesを管理する 291](#linked-account-identitiesを管理する) -[14.4.1 identityを参照する 291](#identityを参照する) +[15.4.1 identityを参照する 291](#identityを参照する) -[14.4.2 identityを削除する 292](#identityを削除する) +[15.4.2 identityを削除する 292](#identityを削除する) -[14.5 Linked account tokensを管理する 293](#linked-account-tokensを管理する) +[15.5 Linked account tokensを管理する 293](#linked-account-tokensを管理する) -[14.5.1 Linked accountのトークンを参照する 293](#linked-accountのトークンを参照する) +[15.5.1 Linked accountのトークンを参照する 293](#linked-accountのトークンを参照する) -[14.5.2 Linked accountのトークンを作成する 294](#linked-accountのトークンを作成する) +[15.5.2 Linked accountのトークンを作成する 294](#linked-accountのトークンを作成する) -[14.5.3 Linked accountのトークンを編集する 295](#linked-accountのトークンを編集する) +[15.5.3 Linked accountのトークンを編集する 295](#linked-accountのトークンを編集する) -[14.5.4 Linked accountのトークンを削除する 295](#linked-accountのトークンを削除する) +[15.5.4 Linked accountのトークンを削除する 295](#linked-accountのトークンを削除する) -[14.6 Linked accountsを管理する 296](#linked-accountsを管理する) +[15.6 Linked accountsを管理する 296](#linked-accountsを管理する) -[14.6.1 Linked accountを参照する 296](#linked-accountを参照する) +[15.6.1 Linked accountを参照する 296](#linked-accountを参照する) -[14.6.2 Linked accountを作成する 297](#linked-accountを作成する) +[15.6.2 Linked accountを作成する 297](#linked-accountを作成する) -[14.6.3 Linked accountを編集する 298](#linked-accountを編集する) +[15.6.3 Linked accountを編集する 298](#linked-accountを編集する) -[14.6.4 Linked accountを削除する 299](#linked-accountを削除する) +[15.6.4 Linked accountを削除する 299](#linked-accountを削除する) -[14.7 OAuth Application Tokensを管理する 301](#oauth-application-tokensを管理する) +[15.7 OAuth Application Tokensを管理する 301](#oauth-application-tokensを管理する) -[14.7.1 OAuth Application Tokensを参照する 301](#oauth-application-tokensを参照する) +[15.7.1 OAuth Application Tokensを参照する 301](#oauth-application-tokensを参照する) -[14.7.2 OAuth Application Tokensを削除する 302](#oauth-application-tokensを削除する) +[15.7.2 OAuth Application Tokensを削除する 302](#oauth-application-tokensを削除する) -[14.8 OAuth Applicationを管理する 303](#oauth-applicationを管理する) +[15.8 OAuth Applicationを管理する 303](#oauth-applicationを管理する) -[14.8.1 OAuth Applicationを参照する 303](#oauth-applicationを参照する) +[15.8.1 OAuth Applicationを参照する 303](#oauth-applicationを参照する) -[14.8.2 OAuth Applicationを削除する 304](#oauth-applicationを削除する) +[15.8.2 OAuth Applicationを削除する 304](#oauth-applicationを削除する) -[14.9 ロールを管理する 305](#ロールを管理する) +[15.9 ロールを管理する 305](#ロールを管理する) -[14.9.1 ロールを参照する 305](#ロールを参照する) +[15.9.1 ロールを参照する 305](#ロールを参照する) -[14.9.2 ロールを作成する 306](#ロールを作成する) +[15.9.2 ロールを作成する 306](#ロールを作成する) -[14.9.3 ロールを編集する 307](#ロールを編集する) +[15.9.3 ロールを編集する 307](#ロールを編集する) -[14.9.4 ロールを削除する 308](#ロールを削除する) +[15.9.4 ロールを削除する 308](#ロールを削除する) -[14.10 Session Activityを管理する 310](#session-activityを管理する) +[15.10 Session Activityを管理する 310](#session-activityを管理する) -[14.10.1 Session Activityを参照する 310](#session-activityを参照する) +[15.10.1 Session Activityを参照する 310](#session-activityを参照する) -[14.10.2 Session Activityを削除する 310](#session-activityを削除する) +[15.10.2 Session Activityを削除する 310](#session-activityを削除する) -[14.11 ユーザを管理する 311](#ユーザを管理する) +[15.11 ユーザを管理する 311](#ユーザを管理する) -[14.11.1 ユーザを参照する 311](#ユーザを参照する) +[15.11.1 ユーザを参照する 311](#ユーザを参照する) -[14.11.2 ユーザを追加する 312](#ユーザを追加する) +[15.11.2 ユーザを追加する 312](#ユーザを追加する) -[14.11.3 ユーザを編集する 313](#ユーザを編集する) +[15.11.3 ユーザを編集する 313](#ユーザを編集する) -[14.11.4 ユーザを無効または有効にする 314](#ユーザを無効または有効にする) +[15.11.4 ユーザを無効または有効にする 314](#ユーザを無効または有効にする) -[14.12 User Profileを管理する 315](#user-profileを管理する) +[15.12 User Profileを管理する 315](#user-profileを管理する) -[14.12.1 User Profileを参照する 315](#user-profileを参照する) +[15.12.1 User Profileを参照する 315](#user-profileを参照する) -[14.12.2 User Profileを削除する 316](#user-profileを削除する) +[15.12.2 User Profileを削除する 316](#user-profileを削除する) -[15. 設定 317](#設定) +[16. 設定 317](#設定) -[15.1 著者表示の設定を変更する 318](#著者表示の設定を変更する) +[16.1 著者表示の設定を変更する 318](#著者表示の設定を変更する) -[15.2 インデックスリンクを表示する 319](#インデックスリンクを表示する) +[16.2 インデックスリンクを表示する 319](#インデックスリンクを表示する) -[15.3 言語を設定する 320](#言語を設定する) +[16.3 言語を設定する 320](#言語を設定する) -[15.4 PDFのカバーページを表示する 321](#pdfのカバーページを表示する) +[16.4 PDFのカバーページを表示する 321](#pdfのカバーページを表示する) -[15.5 ランキング表示を設定する 325](#ランキング表示を設定する) +[16.5 ランキング表示を設定する 325](#ランキング表示を設定する) -[15.6 統計設定を変更する 326](#統計設定を変更する) +[16.6 統計設定を変更する 326](#統計設定を変更する) -[15.7 Webページのスタイルを変更する 327](#webページのスタイルを変更する) +[16.7 Webページのスタイルを変更する 327](#webページのスタイルを変更する) -[15.8 Identifierを設定する 330](#identifierを設定する) +[16.8 Identifierを設定する 330](#identifierを設定する) -[15.8.1 Identifierを参照する 330](#identifierを参照する) +[16.8.1 Identifierを参照する 330](#identifierを参照する) -[15.8.2 Identifierを作成する 331](#identifierを作成する) +[16.8.2 Identifierを作成する 331](#identifierを作成する) -[15.8.3 Identifierを編集する 333](#identifierを編集する) +[16.8.3 Identifierを編集する 333](#identifierを編集する) -[15.9 アイテムをエクスポートするときの設定を変更する 335](#アイテムをエクスポートするときの設定を変更する) +[16.9 アイテムをエクスポートするときの設定を変更する 335](#アイテムをエクスポートするときの設定を変更する) -[15.10 ログ解析時の設定をする 336](#ログ解析時の設定をする) +[16.10 ログ解析時の設定をする 336](#ログ解析時の設定をする) -[15.11 検索条件、結果表示件数及び初期表示を設定する 337](#検索条件結果表示件数及び初期表示を設定する) +[16.11 検索条件、結果表示件数及び初期表示を設定する 337](#検索条件結果表示件数及び初期表示を設定する) -[15.11.1 著者検索を設定する 337](#著者検索を設定する) +[16.11.1 著者検索を設定する 337](#著者検索を設定する) -[15.11.2 検索結果の表示内容を設定する 338](#検索結果の表示内容を設定する) +[16.11.2 検索結果の表示内容を設定する 338](#検索結果の表示内容を設定する) -[15.11.3 詳細検索時の表示項目を設定する 339](#詳細検索時の表示項目を設定する) +[16.11.3 詳細検索時の表示項目を設定する 339](#詳細検索時の表示項目を設定する) -[15.11.4 詳細検索のラベルを変更する 341](#詳細検索のラベルを変更する) +[16.11.4 詳細検索のラベルを変更する 341](#詳細検索のラベルを変更する) -[15.11.5 詳細検索をカスタマイズする 342](#詳細検索をカスタマイズする) +[16.11.5 詳細検索をカスタマイズする 342](#詳細検索をカスタマイズする) -[15.11.6 インデックスツリー/ファセットの表示を設定する 343](#インデックスツリーファセットの表示を設定する) +[16.11.6 インデックスツリー/ファセットの表示を設定する 343](#インデックスツリーファセットの表示を設定する) -[15.11.7 汎用詳細検索項目を設定する 345](#汎用詳細検索項目を設定する) +[16.11.7 汎用詳細検索項目を設定する 345](#汎用詳細検索項目を設定する) -[15.11.8 初期表示を設定する 346](#初期表示を設定する) +[16.11.8 初期表示を設定する 346](#初期表示を設定する) -[15.12 ファセット検索機能を管理する 349](#ファセット検索機能を管理する) +[16.12 ファセット検索機能を管理する 349](#ファセット検索機能を管理する) -[15.12.1 ファセット検索機能を設定する 349](#ファセット検索機能を設定する) +[16.12.1 ファセット検索機能を設定する 349](#ファセット検索機能を設定する) -[15.13 サイトの情報を設定する 353](#サイトの情報を設定する) +[16.13 サイトの情報を設定する 353](#サイトの情報を設定する) -[15.14 サイトライセンスを設定する 355](#サイトライセンスを設定する) +[16.14 サイトライセンスを設定する 355](#サイトライセンスを設定する) -[15.15 サイトマップを作成する 357](#サイトマップを作成する) +[16.15 サイトマップを作成する 357](#サイトマップを作成する) -[15.16 メール送信を設定する 358](#メール送信を設定する) +[16.16 メール送信を設定する 358](#メール送信を設定する) -[15.17 WebAPIのアカウントを設定する 360](#webapiのアカウントを設定する) +[16.17 WebAPIのアカウントを設定する 360](#webapiのアカウントを設定する) -[15.18 File Previewを設定する 361](#file-previewを設定する) +[16.18 File Previewを設定する 361](#file-previewを設定する) -[15.19 Shibbolethユーザを許可する 362](#shibbolethユーザを許可する) +[16.19 Shibbolethユーザを許可する 362](#shibbolethユーザを許可する) -[15.20 制限公開機能を管理する 363](#制限公開機能を管理する) +[16.20 制限公開機能を管理する 363](#制限公開機能を管理する) -[15.20.1 制限公開機能を設定する 363](#制限公開機能を設定する) +[16.20.1 制限公開機能を設定する 363](#制限公開機能を設定する) -[15.20.2 制限公開機能の承認メール内容 367](#_Toc137111756) +[16.20.2 制限公開機能の承認メール内容 367](#_Toc137111756) -[15.20.3 制限公開機能の通知メール内容 367](#_Toc137111757) +[16.20.3 制限公開機能の通知メール内容 367](#_Toc137111757) -[15.21 機関名を設定する 368](#_Toc137111758) +[16.21 機関名を設定する 368](#_Toc137111758) -[16. メンテナンス 369](#メンテナンス) +[17. ログ管理](#ログ管理) -[16.1 ElasticSearchインデックスを設定する 370](#elasticsearchインデックスを設定する) +[17.1 基本監査ログをエクスポートする 370](#基本監査ログをエクスポートする) -[17. ユーザカウントの管理 371](#ユーザカウントの管理) +[18. メンテナンス 369](#メンテナンス) -[17.1 プロフィールを更新する 372](#プロフィールを更新する) +[18.1 ElasticSearchインデックスを設定する 370](#elasticsearchインデックスを設定する) -[17.2 パスワードを変更する 373](#パスワードを変更する) +[19. ユーザカウントの管理 371](#ユーザカウントの管理) -[17.3 アカウントにログインしたデバイスを確認する 374](#アカウントにログインしたデバイスを確認する) +[19.1 プロフィールを更新する 372](#プロフィールを更新する) -[17.4 アプリケーションを管理する 375](#アプリケーションを管理する) +[19.2 パスワードを変更する 373](#パスワードを変更する) -[17.5 グループを管理する 376](#グループを管理する) +[19.3 アカウントにログインしたデバイスを確認する 374](#アカウントにログインしたデバイスを確認する) -[17.5.1 グループへの参加要求および招待を許可する 376](#グループへの参加要求および招待を許可する) +[19.4 アプリケーションを管理する 375](#アプリケーションを管理する) -[17.5.2 グループを作成する 377](#グループを作成する) +[19.5 グループを管理する 376](#グループを管理する) -[17.5.3 グループにメンバーを招待する 378](#グループにメンバーを招待する) +[19.5.1 グループへの参加要求および招待を許可する 376](#グループへの参加要求および招待を許可する) -[17.5.4 グループを編集する 380](#グループを編集する) +[19.5.2 グループを作成する 377](#グループを作成する) -[17.5.5 グループを削除する 381](#グループを削除する) +[19.5.3 グループにメンバーを招待する 378](#グループにメンバーを招待する) -[17.6 セッションの有効時間を変更する 383](#セッションの有効時間を変更する) +[19.5.4 グループを編集する 380](#グループを編集する) -[17.7 管理画面を表示する 384](#管理画面を表示する-1) +[19.5.5 グループを削除する 381](#グループを削除する) + +[19.6 セッションの有効時間を変更する 383](#セッションの有効時間を変更する) + +[19.7 管理画面を表示する 384](#管理画面を表示する-1) ## システムの概要 @@ -672,20 +702,13 @@ Resource Syncの管理に関する操作手順を説明しています。

各アイテムにはWEKO3リポジトリ内で一意となるアイテムIDが割り当てられます。アイテムは1つのアイテムタイプに紐付いており、複数のアイテムタイプと紐付けることはできません。

異なるメタデータで構成させるアイテムを登録したい場合、新たなアイテムタイプを作成することで対応できます。

- - - - - - - - + + - - @@ -751,17 +774,10 @@ Resource Syncの管理に関する操作手順を説明しています。 - -
アイテムタイプ

アイテムに登録するメタデータのデータ型を定義します。アイテムタイプは、JPCOARなどのメタデータスキーマで規定される要素から構成されます。

+
アイテムタイプ

アイテムに登録するメタデータのデータ型を定義します。アイテムタイプは、JPCOARなどのメタデータスキーマで規定される要素から構成されます。

リポジトリ管理者はアイテムに必要なメタデータを検討し、アイテムタイプを独自に作成します。

例)

-

紀要論文と研究データをリポジトリに保管する場合、紀要論文のメタデータ項目と研究データのメタデータ項目は異なります。このような場合に、紀要論文向けのアイテムタイプと、研究データ向けのアイテムタイプをそれぞれ作成できます。

+

紀要論文と研究データをリポジトリに保管する場合、紀要論文のメタデータ項目と研究データのメタデータ項目は異なります。このような場合に、紀要論文向けのアイテムタイプと、研究データ向けのアイテムタイプをそれぞれ作成できます。

インデックス WEKO3リポジトリに登録したアイテムをまとめる単位(カテゴリ)です。WEKO3リポジトリに登録したアイテムは必ず1つ以上のインデックスに所属します。インデックスは複数の子インデックスとアイテムを持つことができます。リポジトリ管理者 リポジトリを管理するロールを持つユーザです。WEKO3モジュールの設定、インデックスツリー設定、アイテムタイプ設定ができます。
- - - - - - + + + - - @@ -813,19 +829,19 @@ Resource Syncの管理に関する操作手順を説明しています。 + - + - @@ -968,21 +984,14 @@ Resource Syncの管理に関する操作手順を説明しています。

(*2)

- -
ログインコンピュータやインターネット上の様々なサービスを利用する際に、予め登録しておいたアカウント情報を用いて個々人のデータにアクセスする認証行為を指します。
ログインコンピュータやインターネット上の様々なサービスを利用する際に、予め登録しておいたアカウント情報を用いて個々人のデータにアクセスする認証行為を指します。
ログアウト ログインによって認証された個々人のデータにアクセスするための権限を失効することです。
機能 管理者ロール 参照先
システム リポジトリ コミュニティ
アイテムタイプ管理
- - - - - - - - - - + + + + + + + - - @@ -1029,7 +1038,8 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1037,7 +1047,8 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1053,7 +1064,8 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1061,6 +1073,15 @@ Resource Syncの管理に関する操作手順を説明しています。 + + + + + + + + @@ -1126,8 +1147,8 @@ Resource Syncの管理に関する操作手順を説明しています。 - - + + @@ -1142,24 +1163,51 @@ Resource Syncの管理に関する操作手順を説明しています。 - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1167,7 +1215,7 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1191,7 +1239,7 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1235,21 +1283,14 @@ Resource Syncの管理に関する操作手順を説明しています。 - -
著者DB管理---6. 著者DB管理
著者DB管理---6. 著者DB管理
編集フィードバックメール ×

+

(*2)

サイトライセンス ×

+

(*2)

フロー ×

+

(*2)

ワークフロー

+

(*2)

ワークスペース設定 ×
Sets ××
Resource List ××

+

(*2)

Change List ××

+

(*2)

Resync ××

+

(*2)

SWORD API---12. SWORD API設定
TSV/XML-
JSON-LD-
- - -12. レコード管理13. レコード管理
- - -3. ファイル管理14. ファイル管理
×
- - - - - - - - - - + + + + + + + - - @@ -1335,7 +1376,8 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1351,7 +1393,7 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1473,7 +1515,8 @@ Resource Syncの管理に関する操作手順を説明しています。 - + @@ -1533,11 +1576,27 @@ Resource Syncの管理に関する操作手順を説明しています。 - + - + + + + + + + + + + + + + + + + + @@ -1561,7 +1620,7 @@ Resource Syncの管理に関する操作手順を説明しています。 (\*1) 読み込み権限のみ可能 -(\*2) 管理者の管理対象となるインデックスのみ可能とするように対応予定 +(\*2) 管理者の管理対象のみ可能 ### 管理画面を表示する @@ -1766,7 +1825,7 @@ Resource Syncの管理に関する操作手順を説明しています。 -10. メタデータの項目を編集します。 +2. メタデータの項目を編集します。 テキストエリアに項目名を入力し、ドロップダウンリストから入力形式を選択します。入力形式の設定内容については、「表 2-1メタデータ属性の入力形式の項目」を参照してください。 @@ -1995,29 +2054,29 @@ Resource Syncの管理に関する操作手順を説明しています。 また、子項目のオプションは該当子項目の直下に表示されている[Required]、[Show List]、[Specify Newline]、[Hide]にチェックを入れることで設定できます。 -表 2‑3[オプション]の項目 + 表 2‑3[オプション]の項目 -| オプション | 説明 | -| --------------- | ---------------------------------------------------------- | -| Required | アイテム登録時に「![](media/media/image43.png)」を表示し、必須入力のメタデータにします。 | -| Allow Multiple | アイテム登録時に[+New]を表示し、メタデータの複数入力を可能にします。 | -| Show List | アイテム一覧画面にメタデータをカンマ区切りで一覧に表示されます。例外的に著者識別子はアイコン、ファイルについてはファイルのタイプ別の独立リンクとして表示されます。 | -| Specify Newline | アイテム一覧画面にメタデータを改行で表示されます。 | -| Hide | インデックス、キーワードサーチ結果およびアイテム詳細にメタデータの詳細を表示しないようにできます。 | + | オプション | 説明 | + | --------------- | ---------------------------------------------------------- | + | Required | アイテム登録時に「![](media/media/image43.png)」を表示し、必須入力のメタデータにします。 | + | Allow Multiple | アイテム登録時に[+New]を表示し、メタデータの複数入力を可能にします。 | + | Show List | アイテム一覧画面にメタデータをカンマ区切りで一覧に表示されます。例外的に著者識別子はアイコン、ファイルについてはファイルのタイプ別の独立リンクとして表示されます。 | + | Specify Newline | アイテム一覧画面にメタデータを改行で表示されます。 | + | Hide | インデックス、キーワードサーチ結果およびアイテム詳細にメタデータの詳細を表示しないようにできます。 | -![](media/media/image44.png) + ![](media/media/image44.png) -親要素と子要素のオプションの優先度は、「表 2-4オプションの優先度」を参照してください。 + 親要素と子要素のオプションの優先度は、「表 2-4オプションの優先度」を参照してください。 -表 2-4オプションの優先度 + 表 2-4オプションの優先度 -> (凡例:〇 チェックあり、- チェックなし) + > (凡例:〇 チェックあり、- チェックなし) -| 親要素 | 子要素 | オプション | -| --- | --- | --------------------- | -| 〇 | \- | 子要素全体に適用します。 | -| \- | 〇 | 指定された子要素のみ適用します。 | -| 〇 | 〇 | 親要素のみ選択された状況と同様になります。 | + | 親要素 | 子要素 | オプション | + | --- | --- | --------------------- | + | 〇 | \- | 子要素全体に適用します。 | + | \- | 〇 | 指定された子要素のみ適用します。 | + | 〇 | 〇 | 親要素のみ選択された状況と同様になります。 | 30. 項目の表示位置を編集します。 @@ -2243,7 +2302,7 @@ WEKO3システムは、JPCOAR, JPCOAR v1, JPCOAR v2, Dublin Core, DDI, lomのス -45. [保存]をクリックします。 +3. [保存]をクリックします。 スキーマが追加されます。 @@ -2345,6 +2404,32 @@ WEKO3システムは、JPCOAR, JPCOAR v1, JPCOAR v2, Dublin Core, DDI, lomのス ・異なるプロパティに対して同じスキーマをマッピングさせる場合は、Schema (子)含めて全て同じようにマッピングさせる必要があります。同じマッピングではない場合は、保存時に「Duplicate mapping as below」とメッセージが表示され、マッピング情報を保存できません。 +## JSON-LDのマッピングを設定する + +外部から連携されるメタデータ(JSON-LD形式)をアイテムタイプスキーマにマッピングする方法を説明します。事前にマッピングするアイテムタイプが定義されている必要があります。 + +マッピングの編集画面は、[アイテムタイプ管理]をクリックして[JSON-LD Mapping]をクリックすると表示されます。 + +本画面で設定したマッピングの情報は、SWORD API機能で登録する[JSON-LD設定]で利用します。 + +### JSON-LD Mappingを新規作成する +1. [作成]タブを選択します。 + ![JSON-LD Mapping一覧画面](media/media/image453.png) + +2. 任意の[名前]を入力し、対象となるアイテムタイプを選択します。 + また、マッピングのテキストを入力しますが、現段階ではエディターは存在しないので手元で作成したマッピング定義テキストを直接テキストエリアに貼り付けしてください。 + ![JSON-LD Mapping作成画面](media/media/image454.png) + 入力が完了したら[保存]をクリックします。設定した内容が保存されます。 + +### JSON-LD Mappingを編集/削除する +1. [一覧]から編集、削除したいマッピング定義の編集ボタンを選択します。 + ![JSON-LD Mapping一覧画面](media/media/image455.png) + +2. 登録済の内容が表示されますので、編集したい場合は必要に応じて内容を編集してください。 + ![JSON-LD Mapping編集画面](media/media/image456.png) + 編集した内容を保存する場合は[保存]、削除したい場合は[削除]をクリックします。 + + ## アイテム管理 この章では、アイテムを管理する方法について説明します。 @@ -2360,7 +2445,9 @@ WEKO3システムは、JPCOAR, JPCOAR v1, JPCOAR v2, Dublin Core, DDI, lomのス 56. [インデックスツリー]でアイテムを一括更新するインデックスを選択します。 - + + コミュニティ管理者の場合は[インデックスツリー]には管理対象のインデックスのみが表示されます。 + ![グラフィカル ユーザー インターフェイス, テキスト, アプリケーション, メール, Web サイト 自動的に生成された説明](media/media/image66.png) 57. [更新用のフィールド]で[Access Type]または[Licence]を選択します。 @@ -2399,6 +2486,8 @@ WEKO3システムは、JPCOAR, JPCOAR v1, JPCOAR v2, Dublin Core, DDI, lomのス アイテムを一括削除する画面が表示されます。 + コミュニティ管理者の場合は[インデックスツリー]には管理対象のインデックスのみが表示されます。 + 62. [インデックスツリー]でアイテムを一括削除するインデックスを選択します。 @@ -2423,32 +2512,34 @@ WEKO3システムは、JPCOAR, JPCOAR v1, JPCOAR v2, Dublin Core, DDI, lomのス ファイルをエクスポートする画面が表示されます。 + コミュニティ管理者の場合は[The last item ID]には管理対象のコミュニティに属する最後に登録されたアイテムIDが表示されます。 + 64. [アイテムタイプ]を選択すると指定したアイテムタイプのアイテムをエクスポートします。アイテムIDを指定すると、指定したアイテムID範囲のアイテムをエクスポートできます。 - -![](media/media/image74.png) + ![](media/media/image74.png) 65. 処理を行う場合は、[エクスポート]をクリックします。 [エクスポート]をクリックすると、全件出力を実行してよいかの確認ダイアログが表示されます。表示されたダイアログのボタンを操作します。 -![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image75.png) + ![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image75.png) 66. [実行]を選択します。全件エクスポート処理が実行されます。 + コミュニティ管理者の場合は、管理対象のコミュニティに属するアイテムのみエクスポートされます。 + 正常に処理が完了するとダウンロードのURLが画面上に表示されます。 URLをクリックするとzipファイル(export-all.zip)がダウンロード出来ます。 エクスポートファイルの構成は以下の通りです。 - ![テキスト, 手紙 自動的に生成された説明](media/media/image76.png) - -**出力されるtsvファイルは、「アイテムタイプ名(アイテムタイプID)」の形でアイテムタイプ毎にtsvファイルが出力されます。各アイテムのコンテンツファイルは出力されません。** + **出力されるtsvファイルは、「アイテムタイプ名(アイテムタイプID)」の形でアイテムタイプ毎にtsvファイルが出力されます。各アイテムのコンテンツファイルは出力されません。** + アイテムタイプ内のエクスポート対象となるアイテム数が一定値を超える場合、tsvファイルは一定値ごとに分割されます。 + その場合「アイテムタイプ名(アイテムタイプID).part(パート数)」の形式のファイル名になります 67. 処理を行わない場合は、[キャンセル]をクリックします。 - ボタンの初期状態は非活性です。エクスポートを実行中は活性となり、クリックすることが出来ます。 **[キャンセル]をクリックすると、全件エクスポートの処理をキャンセルしてよいかの確認ダイアログを表示します。表示されたダイアログのボタンを操作します。** @@ -2468,110 +2559,109 @@ WEKO3システムは、JPCOAR, JPCOAR v1, JPCOAR v2, Dublin Core, DDI, lomのス 1. [アイテム管理]をクリックして[インポート]をクリックします。 [選択]タブにファイルをインポートする画面が表示されます。 + ![グラフィカル ユーザー インターフェイス, テキスト, メール 自動的に生成された説明](media/media/image78.png) -![グラフィカル ユーザー インターフェイス, テキスト, メール 自動的に生成された説明](media/media/image78.png) + 一括登録を実行中に他の端末が Admin\>Items\>Import 画面を開いた場合、メッセージ日本語は[他の端末でインポートを実行中です。]、英語は[Import is in progress on another device. ]が表示されます。 -一括登録を実行中に他の端末が Admin\>Items\>Import 画面を開いた場合、メッセージ日本語は[他の端末でインポートを実行中です。]、英語は[Import is in progress on another device. ]が表示されます。 + 一括登録を実行している端末が Admin\>Items\>Import 画面を開いた場合(他のブラウザで開いたとき,"Result"タブから再度"Import"タブに遷移したとき等)、メッセージ日本語は[インポートを実行中です。]、英語は[Import is in progress. ]が表示されます。 -一括登録を実行している端末が Admin\>Items\>Import 画面を開いた場合(他のブラウザで開いたとき,"Result"タブから再度"Import"タブに遷移したとき等)、メッセージ日本語は[インポートを実行中です。]、英語は[Import is in progress. ]が表示されます。 - -インポート中はアイテムタイプ削除やインデックス操作ができないようにする。 + インポート中はアイテムタイプ削除やインデックス操作ができないようにする。 68. [アイテムタイプ]を選択して[ダウンロード]をクリックします。 選択したアイテムタイプのヘッダ情報をTSV形式でダウンロードします。ファイル名は「*アイテムタイプ名(アイテムタイプID).tsv*」です。 -![グラフィカル ユーザー インターフェイス, テキスト 自動的に生成された説明](media/media/image79.png) - -注 - -アイテムタイプリストが取得できない場合、エラーメッセージ「アイテムタイプリストの取得に失敗しました。」が表示されます。 - -アイテムタイプのダウンロード時にエラーが発生した場合、エラーメッセージ「ダウンロードに失敗しました。」が表示されます。 - -表 3‑1ダウンロードされるアイテムタイプのテンプレートの項目 - -
ユーザ管理---14. ユーザ管理
ユーザ管理---15. ユーザ管理
アクセス: ロールユーザ 〇(*1)×

+

(*2)

- - -15. システム設定165. システム設定
サイトライセンス ×

+

(*2)

ユーザカウント管理ユーザアカウント管理 16. ユーザカウントの管理19. ユーザアカウントの管理
ログ管理---17. ログ管理
エクスポート×
- - - - - - - - - - - - - - - - -
行目説明
1行目

アイテムタイプの名称を記載します。

-
    -
  • 1カラム目 : #ItemType(固定)

  • -
  • 2カラム目 : アイテムタイプの名称を記載します。

  • -
  • 3カラム目 : アイテムタイプのjsonschemaのURLを記載します。

  • -
2行目

各メタデータ項目の内部キーを記載します。

-

出力される項目は以下の通りです。

-
    -
  • ID

  • -
  • URI

  • -
  • IndexID##

  • -
  • POS_INDEX##

  • -
  • FEEDBACK_MAIL

  • -
  • PUBLISH_STATUS

  • -
  • CNRI

  • -
  • DOI_RA

  • -
  • DOI

  • -
  • EDIT_MODE

  • -
  • アイテムタイプに定義されているメタデータ

  • -
- - - - - - - - - - - - - - - - - - -
3行目

各メタデータ項目のラベルを記載します。

-
    -
  • メタデータの階層に応じて、各階層のラベルを"."で連結します。

  • -
  • 繰り返し可能な項目については、ラベルのサフィックスとして"#"+連番(1〜)を記載します。

  • -
4行目アイテム登録画面でユーザが編集できない(自動で設定される)項目について「System」が出力されています。例外的に、ファイルのサイズ、本文URLはファイルがあり、指定がない場合は自動設定されます。
5行目

各アイテムタイプ項目に設定されているオプション情報を記載します。

-

オプションは[Required]、[Hide]、[Allow Multiple]です。

- -「アイテムタイプに定義されているメタデータファイル」以外の項目については、章末の【補足資料】を参照してください。 + ![グラフィカル ユーザー インターフェイス, テキスト 自動的に生成された説明](media/media/image79.png) + + 注 + + アイテムタイプリストが取得できない場合、エラーメッセージ「アイテムタイプリストの取得に失敗しました。」が表示されます。 + + アイテムタイプのダウンロード時にエラーが発生した場合、エラーメッセージ「ダウンロードに失敗しました。」が表示されます。 + + 表 3‑1ダウンロードされるアイテムタイプのテンプレートの項目 + + + + + + + + + + + + + + + + + + +
行目説明
1行目

アイテムタイプの名称を記載します。

+
    +
  • 1カラム目 : #ItemType(固定)

  • +
  • 2カラム目 : アイテムタイプの名称を記載します。

  • +
  • 3カラム目 : アイテムタイプのjsonschemaのURLを記載します。

  • +
2行目

各メタデータ項目の内部キーを記載します。

+

出力される項目は以下の通りです。

+
    +
  • ID

  • +
  • URI

  • +
  • IndexID##

  • +
  • POS_INDEX##

  • +
  • FEEDBACK_MAIL

  • +
  • PUBLISH_STATUS

  • +
  • CNRI

  • +
  • DOI_RA

  • +
  • DOI

  • +
  • EDIT_MODE

  • +
  • アイテムタイプに定義されているメタデータ

  • +
+ + + + + + + + + + + + + + + + + + +
3行目

各メタデータ項目のラベルを記載します。

+
    +
  • メタデータの階層に応じて、各階層のラベルを"."で連結します。

  • +
  • 繰り返し可能な項目については、ラベルのサフィックスとして"#"+連番(1〜)を記載します。

  • +
4行目アイテム登録画面でユーザが編集できない(自動で設定される)項目について「System」が出力されています。例外的に、ファイルのサイズ、本文URLはファイルがあり、指定がない場合は自動設定されます。
5行目

各アイテムタイプ項目に設定されているオプション情報を記載します。

+

オプションは[Required]、[Hide]、[Allow Multiple]です。

+ + 「アイテムタイプに定義されているメタデータファイル」以外の項目については、章末の【補足資料】を参照してください。 69. [ファイル選択]をクリックしてZIPファイルを指定します。 ファイル名が表示されます。 -![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image80.png) + ![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image80.png) -一括登録用のファイル形式は以下の二つの形式です。 + 一括登録用のファイル形式は以下の二つの形式です。 - - > Bagit形式 + - > Bagit形式 -![テキスト, 手紙 自動的に生成された説明](media/media/image81.png) + ![テキスト, 手紙 自動的に生成された説明](media/media/image81.png) - - > Bagit無し形式 + - > Bagit無し形式 -![テキスト 自動的に生成された説明](media/media/image82.png) + ![テキスト 自動的に生成された説明](media/media/image82.png) -アイテムタイプの異なるTSVファイルを複数配置して登録することができます。 + アイテムタイプの異なるTSVファイルを複数配置して登録することができます。 70. [識別子変更モード]を指定してインポートする場合 @@ -3514,6 +3604,16 @@ CNRIハンドル設定ユーザ

英語:サイトの表示言語が日本語以外の時に表示されます。

+インデックスURL +

インデックスのエンドポイントURLが表示されます。

+

編集できません

+ + +CNRI +

インデックスのCNRIが存在する場合表示されます。

+

編集できません

+ + コメント

インデックスのコメントを入力します。コメントは下記項目で表示されます。

    @@ -3556,19 +3656,12 @@ CNRIハンドル設定ユーザ ハーベスト公開 インデックスへのハーベスト要求に対して、所属するデータの提供または非提供を設定します。 - - - - - - - - - - - + + + + +

    ユーザが所属しているグループごとの閲覧権限を設定します。[子インデックスのグループにも再帰的に反映させる]にチェックがある場合、所属する子インデックスと子孫インデックスすべてにグループの設定が再帰的に設定されます。

    +

    学認経由でのログイン時にGakuNin mAPからの情報に従って付与されたグループの閲覧権限に設定ファイルを用いてデフォルトの権限を付与できます。

    +

    ※学認経由でのログイン時に付与されたGakuNin mAPグループは内部的にロールとして扱われます。

    - + +

    [子インデックスのグループにも再帰的に反映させる]にチェックがある場合、所属する子インデックスと子孫インデックスすべてにグループの設定が再帰的に設定されます。

    +

    学認経由でのログイン時にGakuNin mAPからの情報に従って付与されたグループの投稿権限に設定ファイルを用いてデフォルトの権限を付与できます。

    +

    ※学認経由でのログイン時に付与されたGakuNin mAPグループは内部的にロールとして扱われます。

    - + - +
    ONLINE ISSN

    インデックスにオンラインISSNの値を設定します。

    -

    (注)「このインデックス直下のアイテムの利用統計を集計する」のチェックボックスにチェックを入れても、子インデックスへの再帰的な設定値反映および利用統計集計は現在機能しません。

    ONLINE ISSN

    インデックスにオンラインISSNの値を設定します。

    +

    (注)「このインデックス直下のアイテムの利用統計を集計する」のチェックボックスにチェックを入れても、子インデックスへの再帰的な設定値反映および利用統計集計は現在機能しません。

    閲覧権限

    インデックスの閲覧権限を設定します。

    [ロール権限あり]および[グループ権限あり]に表示されているロールおよびグループに所属しているユーザが、そのインデックスを閲覧できます。

    @@ -3579,9 +3672,11 @@ CNRIハンドル設定ユーザ
    • グループ

    -

    ユーザが所属しているグループごとの閲覧権限を設定します。[子インデックスのグループにも再帰的に反映させる]にチェックがある場合、所属する子インデックスと子孫インデックスすべてにグループの設定が再帰的に設定されます。

    投稿権限

    インデックスにアイテムを投稿する権限を設定します。

    [ロール権限あり]および[グループ権限あり]に表示されているロールおよびグループに所属しているユーザが、そのインデックスにアイテムを登録できます。

    @@ -3594,9 +3689,11 @@ CNRIハンドル設定ユーザ
  • グループ

  • ユーザが所属しているグループごとの投稿権限を設定します。

    -

    [子インデックスのグループにも再帰的に反映させる]にチェックがある場合、所属する子インデックスと子孫インデックスすべてにグループの設定が再帰的に設定されます。

    表示形式(検索結果)

    検索結果の表示形式を選択します。

      @@ -3608,7 +3705,7 @@ CNRIハンドル設定ユーザ

    検索結果を見出しの一覧で表示します。

    サムネイル

    インデックスにサムネイルを設定します。

    設定可能なファイルの形式は「gif, jpg, jpe, jpeg, png, bmp」です。

    @@ -3617,7 +3714,7 @@ CNRIハンドル設定ユーザ
    -74. [送信]をクリックします。 +1. [送信]をクリックします。 入力した情報がインデックスに追加されます。 @@ -3733,6 +3830,17 @@ CNRIハンドル設定ユーザ

    必ず入力してください。

    +概要 + +概要を入力します。 + + +ISSN-L + +

    ISSN-Lを入力します。

    +

    フォーマット:^[0-9]{4}-[0-9]{3}[0-9X]

    + + プリント版ISSN/プリント版ISBN print_identifier

    プリント版ISSN/プリント版ISBNのいずれかを入力します。

    @@ -3877,20 +3985,13 @@ CNRIハンドル設定ユーザ ndl_bibid NDL書誌IDを入力します。 - - - - - - - - - + + + - - @@ -3915,7 +4016,7 @@ CNRIハンドル設定ユーザ 図 4‑2入力した文字数が超えている場合 -80. [保存]をクリックします。 +1. [保存]をクリックします。 入力した情報がインデックスに追加されます。 @@ -3946,6 +4047,7 @@ CNRIハンドル設定ユーザ 1. [インデックスツリー管理]をクリックして[カスタムソート]をクリックします。 アイテムの並び順を一括更新する画面が表示されます。 + ※コミュニティ管理者の場合は管理対象のインデックスのみが表示されます。 @@ -3983,6 +4085,8 @@ CNRIハンドル設定ユーザ 作成されたウィジェット一覧が表示されます。 + コミュニティ管理者の場合は管理対象のコミュニティに属するウィジェットのみ表示されます。 + ![](media/media/image110.png) 84. 行頭に表示されている目のアイコン(![iconeye](media/media/image111.png))をクリックします。 @@ -4019,7 +4123,8 @@ CNRIハンドル設定ユーザ - + @@ -4067,41 +4172,32 @@ CNRIハンドル設定ユーザ - -
    J-STAGE資料コード(雑誌名の略称)jstage_code

    J-STAGE資料コードを入力します。

    +
    J-STAGE資料コード(雑誌名の略称)jstage_code

    J-STAGE資料コードを入力します。

    長さ:20文字以内

    -

    使用可能文字:半角英数字記号

    +

    使用可能文字:半角英数字記号

    医中誌ジャーナルコード ichushi_code
    Repositoryウィジェットを追加するリポジトリを設定します。

    ウィジェットを追加するリポジトリを設定します。

    +

    コミュニティ管理者の場合は管理対象のコミュニティのみ選択可能です。

    TypeLabel Text Color ラベルの文字色を設定します。
    - - - - - - + + - - - + - + - +
    Border Style

    以下からウィジェットの枠線のスタイルを設定します。詳細は、「(3) Border Styleの設定内容」を参照してください。

    +
    Border Style

    以下からウィジェットの枠線のスタイルを設定します。詳細は、「(3) Border Styleの設定内容」を参照してください。

    • None

    • Solid

    • Dotted

    • Double

    • -
    +
    Border Color ウィジェットの枠線の色を設定します。
    Background Color ウィジェットの背景色を設定します。
    Enable ウィジェットデザインにてウィジェットの有効または無効を設定します。デフォルトは、有効(チェックあり)です。
    -注※ - -入力必須項目です。 +注※入力必須項目です。 86. [Save]をクリックします。 @@ -4568,6 +4664,8 @@ Main contentsの設定は、「表 5-1ウィジェットの作成画面の項目 1. Repositoryのプルダウンリストで、リポジトリを選択します。 + コミュニティ管理者の場合は管理対象のコミュニティのみ選択可能です。 + 選択したリポジトリのMain Layoutのページが表示されます。また、Widget Listには、ウィジェットが表示されます。 ウィジェット画面で有効(Enableがチェックあり)が設定されているウィジェットがWidget Listに表示されます。 @@ -4636,7 +4734,15 @@ Main contentsの設定は、「表 5-1ウィジェットの作成画面の項目 URLを入力しない場合、エラーメッセージ「Not a valid URL.」が表示されます。 ![](media/media/image179.png) - + + 選択しているリポジトリがコミュニティの場合は、入力したURLの前に「/c/{community_id}/page」の形式でプレフィックスを自動的に付与します。 + + ![](media/media/image447.png) + + 初期値「/」を削除して、外部URLを設定することも可能です。外部URLを設定したページを"Menu"ウィジェットにセットすることで、外部ページへのリンクとして機能します。 + + ![](media/media/image442.png) + 【補足】 追加したページは、ウィジェットの「メニュー」を配置することで、各ページのリンクを表示し、各ページへ遷移することができます。メニューに表示するページは「メニュー」ウィジェットの編集時に指定することができます。 @@ -4986,9 +5092,17 @@ Author IDを編集する方法を説明します。 入力項目については、「(3)Author IDを追加する」を参照してください。 -109. [保存]をクリックします。 +109. [保存]をクリックします。 変更内容が保存されます。 + + ※ 変更内容が反映される際に、この著者DBに紐づいているメタデータを更新します。 + 更新対象は強制変更フラグによって変わります。 + +![グラフィカル ユーザー インターフェイス 中程度の精度で自動的に生成された説明](media/media/image440.png) + + 強制変更フラグがオフの場合:著者ID + 強制変更フラグオンの場合:名前、著者ID、E-mail、機関識別子 ##### Author IDを削除する @@ -5333,8 +5447,10 @@ URLについて ![グラフィカル ユーザー インターフェイス 自動的に生成された説明](media/media/image206.png) -117. 処理を行う場合は、[エクスポート]をクリックします。 - +![グラフィカル ユーザー インターフェイス 自動的に生成された説明](media/media/image441.png) + +117. 処理を行う場合は、エクスポート対象を選択後、[エクスポート]をクリックします。 + エクスポート対象は著者DB、著者識別子、機関識別子から選択できます。 [エクスポート]をクリックすると、全件出力を実行してよいかの確認ダイアログが表示されます。表示されたダイアログのボタンを操作します。 ![グラフィカル ユーザー インターフェイス, テキスト, アプリケーション 自動的に生成された説明](media/media/image207.png) @@ -5349,111 +5465,220 @@ URLについて 表 6‑9ダウンロードされる著者情報の項目 + - - - - - + - + + + + + + + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - - - + + + + - - - - + + + + - - - - + + + - + + - - + + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    項番

    1行目

    -

    ヘッダ項目(内部キー)

    2行目

    -

    ラベル(英語)

    3行目

    -

    ラベル

    -

    (日本語)

    概要# ヘッダ項目 ラベル(日本語) ラベル(英語) 概要
    1 pk_id著者IDAuthor IDこのリポジトリ内でのpk_idを出力する
    2weko_id WEKO ID WEKO IDWEKO3の著者ID( pk_id author_link)を出力するWEKO IDを出力する
    2
    3 authorNameInfo[0...n].familyNameFamily Name Family Name 著者の姓を出力する
    3
    4 authorNameInfo[0...n].firstNameGiven name Given name 著者の名を出力する
    4
    5 authorNameInfo[0...n].languageLanguage 言語Language 著者の言語を出力する
    5
    6 authorNameInfo[0...n].nameFormatname Format フォーマット「familyNmAndNm」を固定で出力するname Format著者の姓名のフォーマットを出力する
    +※現状(SP67時点)は「familyNmAndNm」固定
    6
    7 authorNameInfo[0...n].nameShowFlgName Display 姓名・言語 表示/非表示

    著者の姓名と言語の表示/非表示を出力する

    -

    表示:Y

    -

    非表示:N

    Name Display著者の姓名と言語の表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N"
    7authorNameInfo[0...n].idTypeIdentifier Scheme
    8authorIdInfo[0...n].idType 外部著者ID 識別子Identifier Scheme 外部著者IDの識別子を出力する
    8authorNameInfo[0...n].authorIdIdentifier URI
    9authorIdInfo[0...n].authorId 外部著者ID URIIdentifier URI 外部著者IDの値を出力する
    9authorNameInfo[0...n].authorIdShowFlgIdentifier Display
    10authorIdInfo[0...n].authorIdShowFlg 外部著者ID 表示/非表示

    外部著者IDの表示/非表示を出力する

    -

    表示:Y

    -

    非表示:N

    Identifier Display外部著者IDの表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N"
    10
    11 emailInfo[0...n].emailMail Address メールアドレスMail Address 著者のメールアドレスを出力する
    11
    12 is_deleted削除フラグ Delete Flag著者を削除する場合に "D" と出力する
    +※論理削除された著者情報は出力しないため、全件エクスポートではすべて空欄となる
    13authorAffiliationInfo[0...n].affiliationId[0...n].idtype外部所属機関ID 識別子Affiliation Identifier Scheme外部所属機関IDの識別子を出力する
    14authorAffiliationInfo[0...n].affiliationId[0...n].uri外部所属機関ID URIAffiliation Identifier URI外部所属機関IDの値を出力する
    15authorAffiliationInfo[0...n].authorIdShowFlg外部所属機関ID 表示/非表示Affiliation Identifier Display外部所属機関IDの表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N"
    16authorAffiliationInfo[0...n].affiliationNameInfo[0...n].affiliationName外部所属機関名Affiliation Name外部所属機関名を出力する
    17authorAffiliationInfo[0...n].affiliationNameInfo[0...n].language言語Language外部所属機関名の言語を出力する
    18authorAffiliationInfo[0...n].affiliationNameInfo[0...n].nameShowFlg外部所属機関名・言語 表示/非表示Affiliation Name Display外部所属機関名と言語の表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N"
    19authorAffiliationInfo[0...n].affiliationPeriod[0...n].period外部所属機関 所属期間Affiliation Period外部所属機関所属期間を出力する。
    +所属開始のみ:"20250127"
    +所属開始・終了:"20250127-20250317"
    20authorAffiliationInfo[0...n].affiliationPeriod[0...n].nameShowFlg外部所属機関 所属期間 表示/非表示Affiliation Period Display外部所属機関 所属期間の表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N"
    + + - 著者識別子、機関識別子の各ヘッダの情報は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + +
    # ヘッダ項目 ラベル(日本語) ラベル(英語) 概要
    1schemeスキーマSchemeスキーマを入力する
    2name名前Nameスキーマに対応する識別子名を入力する
    3urlURLURLスキーマに応じるURLを入力する
    4is_deleted 削除フラグ全件エクスポートでは論理削除された著者情報は出力しないため、ヘッダ項目とラベルのみ出力するDelete Flag識別子を削除する場合に "D" と出力する
    + エクスポートの場合は全て空欄である。
    + + > 【注意事項】 > > ・繰り返し項目とする場合はヘッダ行の各項目名の後ろに \[1\], \[2\], ..., \[N\] と出力されます(1つ目の項目名には \[0\] が記載されています)。 > > ・WEKO ID, Delete Flag は繰り返し項目ではありません。 -> + > (2)[キャンセル]を選択します。 > > 全件エクスポートを行なわず、確認用ダイアログを閉じます。 @@ -5496,11 +5721,36 @@ URLについて 一括登録を実行している端末が Admin\>Author Management\>Import 画面を開いた場合(他のブラウザで開いたとき,"Result"タブから再度"Import"タブに遷移したとき等)、メッセージ日本語は[インポートを実行中です。]、英語は[Import is in progress. ] が表示されます。 -119. [ファイル選択]をクリックしてtsvファイルを指定します。 - - ファイル名が表示されます。 - - tsvファイルの入力内容を表6-8に記載します。 +119. Selectタブでの操作 +- [インポート対象]よりインポートする対象を選択します。 + - 著者DB + - 著者識別子 + - 機関識別子 + +- [ファイル選択]をクリックしてtsvファイルを指定します。 + + この際、インポート対象で選んだ対象とファイル形式が違う場合、エラーがでます。 + + 著者DBインポート時のtsvファイルの入力内容を表6-8に記載します。 + 識別子情報インポート時のtsvファイルの入力内容を表6-8-1に記載します。 + 識別子情報の1行目はテーブルを表す文字列が入ります。 + - #authors_prefix_settings(著者識別子) + - #authors_affiliation_settings(機関識別子) + +- [インポート対象]で著者DBを選んでおり、ファイル選択で著者DBに対応したtsvファイルを入れている場合、 +強制変更モードチェックボックスが使えるようになります。 + + ![グラフィカル](media/media/image444.png) + + - このチェックボックスをONにした場合次のモーダルがでます。 + ![グラフィカル](media/media/image445.png) + + - 「利用規約に同意します。」左のチェックボックスをクリックし、 + OKボタンを押すと強制変更モードがONになります。 + このモードをONにして著者DBの更新を行った場合、著者DBに関連づいているアイテムのメタデータを強制的に変更します。 + 免責事項をよく読み、注意して利用してください。 + - これ以外の操作でモーダルを閉じた場合、強制変更モードはOFFになります。 + 表 6‑8インポートする著者情報の項目 @@ -5518,92 +5768,212 @@ URLについて - + 1 pk_id +著者ID +Author ID +このリポジトリ内でのpk_idを出力する + + +2 +weko_id WEKO ID WEKO ID -

    WEKO3の著者ID( pk_id author_link)を入力する。

    -

    著者の編集をする際は必須項目となります。

    +WEKO IDを出力する - -2 + +3 authorNameInfo[0...n].familyName -Family Name 姓 -著者の姓を入力する +Family Name +著者の姓を出力する - -3 + +4 authorNameInfo[0...n].firstName -Given name 名 -著者の名を入力する +Given name +著者の名を出力する - -4 + +5 authorNameInfo[0...n].language -Language 言語 -著者の言語を入力する +Language +著者の言語を出力する - -5 + +6 authorNameInfo[0...n].nameFormat -name Format フォーマット -

    著者の姓名のフォーマットを入力する。

    -

    現在は固定で「familyNmAndNm」を入れる

    +name Format +著者の姓名のフォーマットを出力する
    +※現状(SP67時点)は「familyNmAndNm」固定 - -6 + +7 authorNameInfo[0...n].nameShowFlg -Name Display 姓名・言語 表示/非表示 -

    著者の姓名と言語の表示/非表示を入力する

    -

    表示:Y

    -

    非表示:N

    +Name Display +著者の姓名と言語の表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N" - -7 -authorNameInfo[0...n].idType -Identifier Scheme + +8 +authorIdInfo[0...n].idType 外部著者ID 識別子 -外部著者IDの識別子を入力する +Identifier Scheme +外部著者IDの識別子を出力する - -8 -authorNameInfo[0...n].authorId -Identifier URI + +9 +authorIdInfo[0...n].authorId 外部著者ID URI -外部著者IDの値を入力する +Identifier URI +外部著者IDの値を出力する - -9 -authorNameInfo[0...n].authorIdShowFlg -Identifier Display + +10 +authorIdInfo[0...n].authorIdShowFlg 外部著者ID 表示/非表示 -

    外部著者IDの表示/非表示を入力する

    -

    表示:Y

    -

    非表示:N

    +Identifier Display +外部著者IDの表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N" - -10 + +11 emailInfo[0...n].email -Mail Address メールアドレス -著者のメールアドレスを入力する +Mail Address +著者のメールアドレスを出力する - -11 + +12 is_deleted +削除フラグ Delete Flag +著者を削除する場合に "D" と出力する
    +※論理削除された著者情報は出力しないため、全件エクスポートではすべて空欄となる + + +13 +authorAffiliationInfo[0...n].affiliationId[0...n].idtype +外部所属機関ID 識別子 +Affiliation Identifier Scheme +外部所属機関IDの識別子を出力する + + +14 +authorAffiliationInfo[0...n].affiliationId[0...n].uri +外部所属機関ID URI +Affiliation Identifier URI +外部所属機関IDの値を出力する + + +15 +authorAffiliationInfo[0...n].authorIdShowFlg +外部所属機関ID 表示/非表示 +Affiliation Identifier Display +外部所属機関IDの表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N" + + +16 +authorAffiliationInfo[0...n].affiliationNameInfo[0...n].affiliationName +外部所属機関名 +Affiliation Name +外部所属機関名を出力する + + +17 +authorAffiliationInfo[0...n].affiliationNameInfo[0...n].language +言語 +Language +外部所属機関名の言語を出力する + + +18 +authorAffiliationInfo[0...n].affiliationNameInfo[0...n].nameShowFlg +外部所属機関名・言語 表示/非表示 +Affiliation Name Display +外部所属機関名と言語の表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N" + + +19 +authorAffiliationInfo[0...n].affiliationPeriod[0...n].period +外部所属機関 所属期間 +Affiliation Period +外部所属機関所属期間を出力する。
    +所属開始のみ:"20250127"
    +所属開始・終了:"20250127-20250317" + + +20 +authorAffiliationInfo[0...n].affiliationPeriod[0...n].nameShowFlg +外部所属機関 所属期間 表示/非表示 +Affiliation Period Display +外部所属機関 所属期間の表示/非表示を出力する
    +表示する: "Y"
    +表示しない: "N" + + + + +表 6-8-1 インポートする識別子情報の項目 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + +
    項番

    2行目

    +

    ヘッダ項目(内部キー)

    3行目

    +

    ラベル(英語)

    4行目

    +

    ラベル(日本語)

    概要
    1schemeスキーマSchemeスキーマを入力する
    2name名前Nameスキーマに対応する識別子名を入力する
    3urlURLURLスキーマに応じるURLを入力する
    4is_deleted 削除フラグ著者を削除する場合に"D"と入力するDelete Flag識別子を削除する場合に "D" と出力する
    + エクスポートの場合は全て空欄である。
    + + 【注意事項】 - > 新規登録時に「フォーマット(authorNameInfo\[0...n\].nameFormat)」を入力しなかった場合は、自動で「familyNmAndNm」が登録されます。 @@ -5622,7 +5992,8 @@ URLについて [チェック結果]が[Register]または[Update]であることを確認します。 -[エラー]が表示されている場合、インポートできません。ファイルを確認して、再度手順2.から操作してください。 +[エラー]が表示されている場合、そのデータはインポートできません。 +問題がある場合、ファイルを確認して、再度手順2.から操作してください。 [インポート]タブの項目は、「表 6-9[インポート]タブの項目」の説明を参照してください。 @@ -5647,40 +6018,105 @@ URLについて

    画面に表示されている著者情報のリストをTSV形式でダウンロードします。

    • 文字コードはBOM無しUTF-8、改行コードはCR+LFです。

    • -
    • ファイル名には、ダウンロードした日付が、「Creator_check_YYYYMMDD.tsv」で表示されます。

    • -
    - - -No. -読み込んだファイルの著者の通し番号が表示されます。 - - -WEKO著者ID -

    読み込んだファイルのWEKO著者IDが表示されます。

    -

    新規登録の場合は空欄となります。

    - - -姓名 -読み込んだファイルの著者名が表示されます。 - - -メールアドレス -読み込んだファイルのメールアドレスが表示されます。 - - -チェック結果 -

    読み込んだファイルの各著者情報について、インポートが可能かどうかをチェックした結果が表示されます。

    -
      -
    • エラー(ERROR): XXXXX:バリデーションエラーがあります。

    • -
    • 警告(Warning): XXXXX:バリデーション警告があります。

    • -
    • 登録(Register):新規の著者です。

    • -
    • 更新(Update):内容を更新する著者です。

    • -
    • 削除(Delete):削除する著者です。

    • +
    • ファイル名には、ダウンロードした日付が、「(インポート対象))_check_YYYYMMDD.tsv」で表示されます。

    - + - 画面に表示される著者DBの詳細情報は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #項目名概要
    1No.読み込んだファイルの著者の通し番号を表示する。
    2Current WEKO ID上書きする著者のインポート前のWEKO著者IDを表示する。
    3New WEKO IDtsvから読み込んだ著者のインポート後のWEKO著者IDを表示する。
    4Full_Name読み込んだ著者の姓と名を表示する。
    + 姓と名の間はカンマ+スペース「姓, 名」で表示する。
    5Mail Address読み込んだ著者のメールアドレスを表示する。
    6チェック結果(Check Result)

    読み込んだファイルの各著者について、インポートが可能かバリデーションチェックを実施する。
    + ・エラーが無く、新規の著者の場合:「登録(Register)」と表示する
    + ・エラーが無く、更新の著者の場合:「更新(Update)」と表示する
    + ・削除する著者の場合:「削除(Delete)」と表示する
    + ・バリデーションエラーがある場合:「エラー: XXXXX (ERROR: XXXXX)」とエラー内容を表示する

    +

    ・登録は可能であるが、何らかの問題があるときは「警告(Warning)」と表示する。

    + + - 画面に表示される識別子の詳細情報は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #項目名概要
    1No.読み込んだファイルのデータの通し番号を表示する。
    2Scheme読み込んだデータのスキーマを表示する。
    3Scheme_Name読み込んだデータのスキーマ名を表示する。
    4url読み込んだデータのスキーマurlを表示する。 +
    5チェック結果(Check Result)

    読み込んだファイルの各データについて、インポートが可能かバリデーションチェックを実施する。
    + ・エラーが無く、新規の識別子スキーマの場合:「登録(Register)」と表示する
    + ・エラーが無く、既存の識別子スキーマの場合:「更新(Update)」と表示する
    + ・削除する識別子の場合:「削除(Delete)」と表示する
    + ・バリデーションエラーがある場合:「エラー: XXXXX (ERROR: XXXXX)」とエラー内容を表示する

    +

    ・登録は可能であるが、何らかの問題があるときは「警告(Warning)」と表示する。

    + 注※ ダウンロード時にエラーが発生する場合、エラーメッセージ「ダウンロードに失敗しました。」が表示されます。 @@ -5702,49 +6138,138 @@ URLについて - + + - - - - - - - - - - - - - - - - - - + + + - - + + +
    項目#内容 説明
    ダウンロード

    画面に表示されている著者情報のリストをTSV形式でダウンロードします。

    -
      -
    • 文字コードは日本語(Shift-JIS)、改行コードはCR+LFです。

    • -
    • ファイル名には、ダウンロードした日付が、「Creator_List_Download_YYYYMMDD.tsv」で表示されます。

    • -
    No.読み込んだファイルの著者の通し番号が表示されます。
    開始日[インポート]をクリックした後、著者の登録処理を開始した日時が表示されます。
    終了日著者の登録処理が完了した日時が表示されます。
    WEKO著者ID

    読み込んだファイルのWEKO著者IDが表示されます。

    -

    新規登録の場合は空欄となります。

    1サマリー(Summary) + ・ 著者DBの場合のみ表示される。
    + ・ 表示されるのは以下の4つ
    +   ・「総計」
    +   ・「成功」
    +   ・「失敗」
    +   ・「処理待ち」
    +
    ステータス

    著者の処理結果が表示されます。

    -
      -
    • エラー(ERROR): XXXXX:登録処理でエラーが発生した場合です。

    • -
    • 登録成功(Register Success):新規の著者を正常に登録しました。

    • -
    • 更新成功(Update Success):著者情報の更新が正常に完了しました。

    • -
    • 削除成功(Delete Success):著者を正常に削除しました。

    • -
    2ダウンロード(Download)ボタンを押下すると、画面に表示されている著者のリストをTSV形式でダウンロードできる。
    +・文字コードはBOM無しUTF-8、改行コードはCR+LFとする
    +・ファイル名は「{target}_List_Download_yyyymmdd.tsv」とする
    + - 画面に表示される著者のインポート結果は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #項目名概要
    1No.読み込んだファイルの著者の通し番号を表示する。
    2開始日(Start Date)1著者に対して登録処理を開始した日時を表示する。
    + フォーマット:YYYY-MM-DD hh:mm:ss
    3終了日(End Date)1著者に対して登録処理が完了した日時を表示する。
    + フォーマット:YYYY-MM-DD hh:mm:ss
    4Previous WEKO ID上書きする著者のインポート前のWEKO著者IDを表示する。
    5New WEKO IDtsvから読み込んだ著者のインポート後のWEKO著者IDを表示する。
    6Full_name読み込んだ著者の姓と名を表示する。
    + 姓と名の間はカンマ+スペース「姓, 名」で表示する。
    7ステータス(Status)登録した結果を表示する。
    + ・「Register Success」:新規登録が完了した場合に表示
    + ・「Update Success」:変更・更新登録が完了した場合に表示
    + ・「Delete Success」:削除が完了した場合に表示
    + ・「ERROR: XXXXX」:エラーが発生した場合に表示
    + + - 画面に表示される識別子インポート結果は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #項目名概要
    1No.読み込んだファイルのデータの通し番号を表示する。
    2開始日(Start Date)1データに対して登録処理を開始した日時を表示する。
    + フォーマット:YYYY-MM-DD hh:mm:ss
    3終了日(End Date)1データデータに対して登録処理が完了した日時を表示する。
    + フォーマット:YYYY-MM-DD hh:mm:ss
    4Scheme読み込んだデータのスキーマを表示する。
    5Scheme_Name読み込んだデータのスキーマ名を表示する。
    6ステータス(Status)登録した結果を表示する。
    + 「Register Success」:新規登録が完了した場合に表示
    + 「Update Success」:変更・更新登録が完了した場合に表示
    + 「Delete Success」:削除が完了した場合に表示
    + 「ERROR: XXXXX」:エラーが発生した場合に表示
    + 注※ ダウンロード時にエラーが発生する場合、エラーメッセージ「ダウンロードに失敗しました。」が表示されます。 @@ -5758,162 +6283,484 @@ URLについて 表 6‑11 バリデーションチェック - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    タイプチェックするタブ英語日本語説明
    エラー選択(Select)The TSV file could not be read. Make sure the file format is TSV and that the file is UTF-8 encoded.TSVファイルを読み込めませんでした。ファイル形式がTSVであること、またそのファイルがUTF-8でエンコードされているかを確認してください。

    tsvファイルの形式のチェック

    -

    ・選択したファイルがtsvファイルでは無い、またはtsvファイルの文字コードがUTF-8では無い

    -

    ・tsvファイルの形式のエラー(タブ無し, ヘッダ行無し)

    エラー選択(Select)There is no data to import.インポートのデータがありません。ヘッダ行だけの空レコードになっている
    エラー選択(Select)

    The following metadata keys are duplicated.

    -

    {1}

    以下のメタデータキーが重複しています。

    -

    {1}

    ヘッダの間違いで内部キー(メタデータキー)が重複している

    -

    {1}: メタデータキー名

    エラー選択(Select)

    Specified item does not consistency with DB item.

    -

    {1}

    指定された項目とDBの項目が一致しません。

    -

    {1}

    tsvに指定された項目とDBの項目が一致していない

    -

    {1}: 項目名

    エラー選択/インポート(Select/Import)Celery is not running.Celeryは動いていません。Celeryが動いていない状態
    エラー選択/インポート(Select/Import)Import is in progress.インポートを実行中です。自分の端末でインポートを実行中に、インポートを実行する
    エラー選択/インポート(Select/Import)Import is in progress on another device.他の端末でインポートを実行中です。他の端末でインポートを実行している
    エラーインポート(Import){} is required item.{}は必須項目です。著者更新時にWEKO著者IDが入力されていない状態
    エラーインポート(Import)Specified WEKO ID does not exist.指定されたWEKO IDが存在していません。

    ・著者が一意に定まらない(存在しないWEKO著者ID)

    -

    ・削除対象の著者がDBに存在しない

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    エラーインポート(Import){1} should be set by one of {2}.{1}は{2}のいずれかを設定してください。

    ・言語の指定でDBに存在しない言語を入力する

    -

    ・姓名・言語 表示/非表示で"Y","N"以外を入力する

    -

    ・外部著者識別子 表示/非表示で"Y","N"以外を入力する

    -

    {1}: language, nameShowFlg, authorIdShowFlg

    -

    {2}: 言語の一覧、"Y","N"

    エラーインポート(Import){1} should be set by one of {2}.{1}は{2}を設定してください。

    ・削除フラグで"D"以外を入力する

    -

    ・姓名のフォーマットの値が「familyNmAndNm」以外の値

    -

    {1}: is_deleted, nameFormat

    -

    {2}: "D"、"familyNmAndNm"

    エラーインポート(Import)Specified Identifier Scheme '{1}' does not exist.指定された外部著者ID 識別子'{1}'が存在していません。

    ID PrefixでDBに存在しない識別子を入力する

    -

    {1}:外部著者ID 識別子

    エラーインポート(Import)There is duplicated data in the TSV file.TSVファイルの中に重複するデータがあります。TSVファイルの中に重複するデータがある
    ワーニングインポート(Import)

    External author identifier exists in DB.

    -

    {1}

    外部著者識別子がDBに存在しています。

    -

    {1}

    外部著者識別子がDBに存在している

    -

    {1}:外部著者識別子

    エラー選択/インポート/結果(Select/Import/Result)Internal server errorサーバ内部エラーサーバ内部エラー(ネットワークの問題、予期しない例外など)が発生した
    エラー結果(Result)Failed to import.インポートに失敗しました。エラーが発生したため、インポートに失敗した
    -| ワーニング | 結果(Result) | The specified author has been deleted. Update author information with tsv content, but author remains deleted as it is. | 指定された著者は削除済です。tsvの内容で著者情報を更新しますが、著者は削除されたままです。 | 削除済みの著者について、tsvに該当の著者情報を指定して更新した | -| ----- | ---------- | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------- | -------------------------------- | -| エラー | 結果(Result) | The author is linked to items and cannot be deleted. | アイテムがリンクしているため、指定された著者は削除できません。 | アイテムに紐づいている著者を削除した | + - 本画面で著者情報のチェックをしているエラー内容は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    # チェックするタブ チェック内容 処理 エラーメッセージ(日) エラーメッセージ(英) 備考
    1選択(Select)tsvファイルの形式のチェック
    + #1: 選択したファイルがtsvファイルでは無い、またはtsvファイルの文字コードがUTF-8では無い
    + #3: tsvファイルの形式のエラー(タブ無し, ヘッダ行無し)
    ERRORTSVファイルを読み込めませんでした。ファイル形式がTSVであること、またそのファイルがUTF-8でエンコードされているかを確認してください。The TSV file could not be read. Make sure the file format is TSV and that the file is UTF-8 encoded.
    2選択(Select)ヘッダ行だけの空レコードになっているERRORインポートのデータがありません。There is no data to import.
    3選択(Select)ヘッダの間違いからメタデータキーが重複しているERROR以下のメタデータキーが重複しています。
    + {1}
    The following metadata keys are duplicated.
    + {1}
    {1}: メタデータキー名
    4選択(Select)tsvに指定された項目とDBの項目が一致していないERROR指定された項目とDBの項目が一致しません。
    + {1}
    Specified item does not consistency with DB item.
    + {1}
    {1}: 項目名
    5選択/インポート
    + (Select/Import)
    Celeryが動いていない状態ERRORCeleryは動いていません。Celery is not running.
    6選択/インポート
    + (Select/Import)
    自分の端末にインポートを実行しているうちに、インポートを実行するERRORインポートを実行中です。Import is in progress.
    7選択/インポート
    + (Select/Import)
    他の端末でインポートを実行しているERROR他の端末でインポートを実行中です。Import is in progress on another device.
    8インポート(Import)WEKO_IDが入力されていない状態
    + または著者情報、機関情報で他の情報を入力されたが、idTypeとauthorIdのいずれかを入力されていない状態
    ERROR{}は必須項目です。{} is required item.
    9インポート(Import)WEKO_IDが半角数字でない状態ERRORWEKO_IDは半角数字のみです。WEKO ID is Half-width digits only.
    10インポート(Import)#4 著者が一意に定まらない(存在しないAuthor ID (author_link))
    + #5 削除対象の著者がDBに存在しない
    ERROR指定されたAuthor IDが存在していません。Specified Author ID does not exist.
    11インポート(Import)WEKO IDが既に存在する。(既存のWEKO ID)ERROR指定されたWEKO IDが既に存在しています。Specified WEKO ID already exist.
    12インポート(Import)#6 言語の指定でDBに存在しない言語を入力する
    + #8 ヘッダ項目#7の姓名・言語 表示/非表示で"Y","N"以外を入力する
    + #9 ヘッダ項目#10の外部著者識別子 表示/非表示で"Y","N"以外を入力する
    + ヘッダ項目#13の外部所属機関識別子 表示/非表示で"Y","N"以外を入力する
    + ヘッダ項目#16の外部所属機関名・言語 表示/非表示で"Y","N"以外を入力する +
    ERROR{1}は{2}のいずれかを設定してください。{1} should be set by one of {2}.{1}: language, nameShowFlg, authorIdShowFlg
    + {2}: 言語の一覧、"Y","N"
    13インポート(Import)#10 ヘッダ項目#20の削除フラグで"D"以外を入力する
    + #13 姓名のフォーマットの値が「familyNmAndNm」以外の値
    ERROR{1}は{2}を設定してください。{1} should be set by one of {2}.{1}: is_deleted, nameFormat
    + {2}: "D"、"familyNmAndNm"
    14インポート(Import)ID PrefixでDBに存在しない識別子を入力するERROR指定された外部著者ID 識別子'{1}'が存在していません。Specified Identifier Scheme '{1}' does not exist.{1}:外部著者ID 識別子
    15インポート(Import)Affiliation IDでDBに存在しない識別子を入力するERROR指定された外部所属機関ID 識別子'{1}'が存在していません。Specified Affiliation Identifier Scheme '{1}' does not exist.{1}:外部所属機関ID 識別子
    16インポート(Import)TSVファイルの中に重複するデータがあるERRORTSVファイルの中に重複するデータがあります。There is duplicated data in the TSV file.各レコードがマルチタスクで実行されているので、後勝ちで2番目のデータを上書きするのが難しい(重複する場合にどのレコードで更新されるか定まらない)。WARNING→ERRORに変更し、2つ目以降は更新されないようにする
    17インポート(Import)外部著者識別子がDBに存在しているWARNING外部著者識別子がDBに存在しています。
    + {1}
    External author identifier exists in DB.
    + {1}
    {1}:外部著者識別子
    18インポート(Import)外部所属機関所属期間が日付の形式になっていないERROR外部所属機関所属期間が形式にあっていません。
    + yyyy-MM-dd、または空白であるようにしてください。
    + {1}
    Affiliation Period must be in the format:
    + yyyy-MM-dd, blank
    + {1}
    {1}:外部所属期間
    19インポート(Import)所属期間終了日が開始日より早いERROR所属期間終了日は開始日より後の日付にしてくださいPeriod end must be after Period start.
    20選択/インポート/結果
    + (Select/Import/Result)
    サーバ内部エラー(ネットワークの問題、予期しない例外など)が発生したERRORサーバ内部エラーInternal server error
    21結果(Result)登録成功INFO登録成功Register Success
    22結果(Result)更新成功INFO更新成功Update Success
    23結果(Result)削除成功INFO削除成功Delete Success
    24結果(Result)エラーが発生したため、インポートに失敗したERRORインポートに失敗しました。Failed to import.
    25インポート(Import)削除済みの著者について、tsvに該当の著者情報を指定して更新したWARNING指定された著者は削除済です。tsvの内容で著者情報を更新しますが、著者は削除されたままです。The specified author has been deleted. Update author information with tsv content, but author remains deleted as it is.
    26インポート/結果
    + (Import/Result)
    アイテムに紐づいている著者を削除したERRORアイテムがリンクしているため、指定された著者は削除できません。The author is linked to items and cannot be deleted.英語のメッセージが既存
    + 日本語のメッセージを新規追加
    + + - 本画面で識別子のチェックをしているエラー内容は以下の通り + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #チェックするタブチェック内容処理エラーメッセージ(日)エラーメッセージ(英)備考
    1選択(Select)tsvファイルの形式のチェック
    + #1: 選択したファイルがtsvファイルでは無い、またはtsvファイルの文字コードがUTF-8では無い
    + #3: tsvファイルの形式のエラー(タブ無し, ヘッダ行無し, テーブル名の指定がない)
    ERRORTSVファイルを読み込めませんでした。ファイル形式がTSVであること、またそのファイルがUTF-8でエンコードされているかを確認してください。The TSV file could not be read. Make sure the file format is TSV and that the file is UTF-8 encoded.
    2選択(Select)ヘッダ行だけの空レコードになっているERRORインポートのデータがありません。There is no data to import.
    3選択(Select)ヘッダの間違いからキーが重複しているERRORキーが重複しています。The keys are duplicated.
    4選択(Select)tsvに指定された項目とDBの項目が一致していないERROR指定された項目とDBの項目が一致しません。
    + {1}
    Specified item does not consistency with DB item.
    + {1}
    {1}: 項目名
    5選択/インポート
    + (Select/Import)
    Celeryが動いていない状態ERRORCeleryは動いていません。Celery is not running.
    6選択/インポート
    + (Select/Import)
    自分の端末にインポートを実行しているうちに、インポートを実行するERRORインポートを実行中です。Import is in progress.
    7選択/インポート
    + (Select/Import)
    他の端末でインポートを実行しているERROR他の端末でインポートを実行中です。Import is in progress on another device.
    8選択/インポート
    + (Select/Import)
    自分の端末でインポートを実行しているうちに、インポートを実行するERRORインポートを実行中です。Import is in progress.
    9インポート(Import)Schemeが記述されていないERRORschemeを設定してください。Scheme is required item.
    10インポート(Import)Nameが記述されていないERRORnameを設定してください。Name is required item.
    11インポート(Import)urlがURLの形式でないERRORurlをURLの形式にしてください。URL is not URL format.
    12インポート(Import)削除対象の識別子が存在しないERROR指定された識別子が存在していません。The specified identifier does not exist.
    13インポート(Import)TSVファイルの中に重複するデータがあるERRORTSVファイルの中に重複するデータがあります。The specified scheme is duplicated.各レコードがマルチタスクで実行されているので、後勝ちで2番目のデータを上書きするのが難しい(重複する場合にどのレコードで更新されるか定まらない)。WARNING→ERRORに変更し、2つ目以降は更新されないようにする
    14インポート(Import)schemaに「WEKO」が入力されている。ERROR著者識別子WEKOは編集できません。The scheme WEKO cannot be used.
    15選択/インポート/結果
    + (Select/Import/Result)
    サーバ内部エラー(ネットワークの問題、予期しない例外など)が発生したERRORサーバ内部エラーInternal server error
    16結果(Result)登録成功INFO登録成功Register Success
    17結果(Result)更新成功INFO更新成功Update Success
    18結果(Result)削除成功INFO削除成功Delete Success
    19結果(Result)エラーが発生したため、インポートに失敗したERRORインポートに失敗しました。Failed to import.
    20インポート/結果
    + (Import/Result)
    著者DBに紐づいている識別子を削除したERROR著者DBで使用されているため、指定された識別子は削除できません。The specified scheme is used in the author ID.
    + ## 利用統計の設定 @@ -5923,9 +6770,11 @@ URLについて レポートの管理画面は、[統計]をクリックして[運用レポート]をクリックすると表示されます。 +画面上部にあるプルダウンからリポジトリを選択することで、そのリポジトリのレポートの管理画面を表示することができます。 + #### アイテム登録件数を確認する -レポートの管理画面の[登録件数]にアイテムの登録件数、登録済み公開アイテム件数、そして登録済みプライベートアイテム件数が表示されます。 +レポートの管理画面の[登録件数]に選択されているリポジトリに属するアイテムの登録件数、登録済み公開アイテム件数、そして登録済みプライベートアイテム件数が表示されます。 削除済みアイテム、新規アイテム登録時のワークフローが未完了のアイテムは集計対象外になります。それぞれの集計方法は以下の通りです。 @@ -5957,7 +6806,7 @@ URLについて 123. [ダウンロード]をクリックします。 - 選択されているタイプの定型レポートがダウンロードされます。ダウンロードされたファイルについては、「7.1.3定型レポートのタイプ一覧」を参照してください。 + 選択中のリポジトリを集計対象として、選択されているタイプの定型レポートがダウンロードされます。ダウンロードされたファイルについては、「7.1.3定型レポートのタイプ一覧」を参照してください。 ダウンロード時にエラーが発生する場合、エラーメッセージ「予期しないエラーが発生しました」が表示されます。 @@ -6325,9 +7174,11 @@ TSV形式でダウンロードすることができる定型レポートを次 フィードバックメールの送信を設定する画面が表示されます。 - +2. [リポジトリ]から設定をしたいリポジトリを選択します。 + + 画面上の各項目に、選択したリポジトリで設定された値が表示されます。 -133. [自動送信設定]で、[送信]または[送信しない]を選択します。 +3. [自動送信設定]で、[送信]または[送信しない]を選択します。 ![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image236.png) @@ -6351,13 +7202,17 @@ TSV形式でダウンロードすることができる定型レポートを次 サイトライセンスの操作ログを集計する画面は、[統計]をクリックして[サイトライセンス]をクリックすると表示されます。 +画面上部にあるプルダウンからリポジトリを選択すると、画面上の設定内容や取得できる統計情報がそのリポジトリに関連するものに切り替わります。この操作により、リポジトリ毎に設定の変更や統計情報の取得をすることができます。 + サイトライセンスユーザによる操作ログの集計、解析を行い、その結果をフィードバックすることができます。 管理画面にて除外対象にしているアイテムタイプを除いて集計されます。 #### Site Licenseの統計情報を自動送信する -1. [Automatic Send]で、[送信]のラジオボタンをクリックします。 +1. 画面上部のプルダウンから設定を変更したいリポジトリを選択します。 + +2. [Automatic Send]で、[送信]のラジオボタンをクリックします。 ![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image239.png) @@ -6367,9 +7222,9 @@ TSV形式でダウンロードすることができる定型レポートを次 #### Site Licenseの統計情報を手動で送信する - +1. 画面上部のプルダウンから統計情報を取得したいリポジトリを選択します。 -1. [メール手動送信]で、ログを集計する期間を設定します。 +2. [メール手動送信]で、ログを集計する期間を設定します。 ![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image240.png) @@ -6429,6 +7284,7 @@ TSV形式でダウンロードすることができる定型レポートを次 ### フローを設定する フローは、アイテムの登録処理(アクション)の流れです。フロー一覧画面は、[ワークフロー管理]をクリックして[フロー]をクリックすると表示されます。この画面は、フローの一覧を表示し、フローを追加または削除することができます。 +※コミュニティ管理者の場合は管理対象のフローのみが表示されます。 #### フローを追加する @@ -6440,11 +7296,15 @@ TSV形式でダウンロードすることができる定型レポートを次 ![グラフィカル ユーザー インターフェイス, アプリケーション 自動的に生成された説明](media/media/image241.png) -138. フローの名前を入力します。 +2. フローの名前を入力します。 ![グラフィカル ユーザー インターフェイス 自動的に生成された説明](media/media/image242.png) -139. [保存]をクリックします。 +3. フローを登録するリポジトリを選択します。 + +![](media/media/image446.png) + +4. [保存]をクリックします。 フローが追加されます。 @@ -6535,6 +7395,7 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に ### ワークフローを設定する ワークフローは、フローとアイテムの組み合わせです。フロー一覧画面は、[ワークフロー管理]]をクリックして[ワークフロー]をクリックすると表示されます。この画面は、ワークフローの一覧を表示し、ワークフローを追加または削除することができます。 +※コミュニティ管理者の場合は管理対象のワークフローのみが表示されます。 #### ワークフローを追加する @@ -6571,22 +7432,22 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に

    選択肢は、[メタデータ]画面で登録された標準アイテムタイプ一覧及びハーベスト用アイテムタイプ一覧です。

    +Repository +

    ワークフローを登録するリポジトリを選択します。

    +

    選択肢は、デフォルトの「Root Index」と[コミュニティ]画面で登録されたコミュニティ一覧です。

    + + 利用申請フラグ

    デフォルトではチェックは付いていません。チェックありの場合、アイテム登録画面のコンテンツファイルの「提供方法」の「ワークフロー」の選択肢として表示されます。

    *システム管理者のみ表示される項目です

    - + GakuNinRDM Flag GakuNinRDMからアイテムを登録するワークフローにするためのフラグです。 - - - - - - - - + + - - - + - + @@ -6615,7 +7474,7 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に ![](media/media/image257.png)zu1101300.tif -147. [保存]をクリックします。 +1. [保存]をクリックします。 ワークフローが保存されます。メッセージ「Workflow created successfully.」が表示されます。 @@ -6659,6 +7518,22 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に ![](media/media/image262.png) +### ワークスペース設定をする + +ワークスペースにてアイテム登録を行う際の登録方法を設定します。 + +#### 登録方法を 直接登録 に設定する + +ワークスペースからアイテムを登録する場合に、ワークフローを使用せずに直接登録が行われるようになります。 +アイテム登録には選択したアイテムタイプが使用されます。 +![](media/media/image451.png) + +#### 登録方法を ワークフロー登録 に設定する + +ワークスペースからアイテムを登録する場合に、指定したワークフローを使用して登録が行われるようになります。 +![](media/media/image452.png) + + ## コミュニティ管理 この章では、コミュニティを管理する方法について説明します。 @@ -6678,6 +7553,7 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に 1. [コミュニティ管理]をクリックして[コミュニティ]をクリックします。 [一覧]タブにコミュニティのリストが表示されます。 + コミュニティ管理者の場合は管理対象のコミュニティのみが表示されます。 ![](media/media/image263.png) @@ -6704,18 +7580,32 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に | 項目 | 説明 | | --------------- | ----------------------------------- | | Id | IDを入力します。必ず入力してください。 | +| Cnri | CNRIが有効な場合にハンドルが発行されます。 | | Owner | コミュニティ所有者のロールを指定します。必ず入力してください。 | | Index | コミュニティを設定するインデックスを選択します。必ず入力してください。 | +| Group | グループを指定します。 | | Title | タイトルを入力します。 | | Description | 説明を入力します。 | | Page | ページ数を入力します。 | | Curation Policy | ポリシーを入力します。 | | Ranking | ランキングの表示件数を入力します。 | | Fixed Points | 固定点を入力します。 | +| Content Policy | コンテンツポリシーを入力します。 | +| login_menu_enabled| コミュニティ画面にログインメニューを表示するかを設定します。 | +| Thumbnail | サムネイル画像ファイルを選択します。 | +| カタログ | コミュニティの検索に使用するタグ情報を入力します。
    入力項目は「カタログ」プロパティから以下の項目です。詳細は[アイテムタイプ管理]>[プロパティ]を参照してください。
    • Contributor
    • Identifier
    • Subject
    • License
    • Rights
    • Access Rights
    ※初期表示では項目が折りたたまれています。| -153. [保存]をクリックします。 - - コミュニティが作成されます。 +3. [保存]をクリックします。 + + コミュニティが作成されます。 + + ※コミュニティを新規作成すると、ページレイアウト機能から作成できるコミュニティは以下のページが自動で作成されます。詳細は[ウェブデザイン管理]>[ページレイアウト]を参照してください + + | Title | URL | + |------------------|----------------------------------------| + | About | /c/{community_id}/page/about | + | Editorial board | /c/{community_id}/page/eb | + | OA Policy | /c/{community_id}/page/oapolicy | #### コミュニティを編集する @@ -6767,7 +7657,7 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に ![](media/media/image267.png) -表 9‑2[作成]の項目 +表 9‑3[作成]の項目 | 項目 | 説明 | | ---------- | -------------------- | @@ -6882,6 +7772,8 @@ OAI-PMHを利用し、他の機関からハーベストを行うことができ 1. [一覧]タブをクリックすると、登録されているプランのリストが表示されます。 + コミュニティ管理者の場合は管理対象のインデックスが登録先に設定されたプランのみ表示されます。 + ![](media/media/image274.png) 166. 行頭に表示されている目のアイコン(![iconeye](media/media/image111.png))をクリックします。 @@ -7182,6 +8074,8 @@ Resource List及びResource Dumpを出力する方法を説明します。 1. [List]タブをクリックすると、登録されているResource Listのリストが表示されます。 + コミュニティ管理者の場合は管理対象のインデックスのResource Listのみが表示されます。 + ![グラフィカル ユーザー インターフェイス, テキスト, アプリケーション, メール 自動的に生成された説明](media/media/image294.png) 188. [Status]が[Publish]及び該当インデックスが公開と設定されている場合、該当インデックスのResource List及びResource Dumpが出力されます。 @@ -7242,7 +8136,8 @@ Resource Listの入力項目を次に示します。 - + @@ -7310,6 +8205,8 @@ Change Listの一覧及びChange Dumpの一覧を出力する方法を説明し 1. [List]タブをクリックすると、登録されているChange Listのリストが表示されます。 + コミュニティ管理者の場合は管理対象のインデックスのChange Listのみが表示されます。 + ![グラフィカル ユーザー インターフェイス, テキスト, アプリケーション, メール 自動的に生成された説明](media/media/image300.png) 193. [Status]が[Publish]及び該当インデックスが公開と設定されている場合、該当インデックスのChange Listの一覧及びChange Dumpの一覧が出力されます。 @@ -7384,7 +8281,8 @@ Change Listの入力項目を次に示します。 - + @@ -7578,7 +8476,8 @@ Resyncの入力項目を次に示します。 +

    必ず設定してください。

    +

    ※コミュニティ管理者の場合は管理対象のインデックスのみ設定可能です

    @@ -7644,6 +8543,89 @@ Resyncを削除する方法を説明します。 /home/invenio/.virtualenvs/invenio/var/instance/data/tmp/weko\_resync\_xxxxxxxx +## SWORDAPI設定 + +SWORD APIを利用してアイテムを連携するための設定を行います。 +メタデータの形式によって、設定方法が異なります。 + +### TSV/CSV用の設定を行う + +1. [SWORD API]をクリックして、[TSV/XML]をクリックします。 + +2. 設定画面が開きます。異なるメタデータ形式の画面が開く場合は、[TSV/CSV]タブをクリックします。 + ![TSV/CSV設定](media/media/image457.png) + +3. 必要な項目の設定を行います。 + + - 登録方式:直接登録、ワークフロー登録のどちらかを選択します。 + ワークフローは連携時に自動的に選択されるため、指定できません。 + - アイテム重複チェック:連携時にすでに登録されているアイテムとタイトルなどのメタデータが重複しているかをチェックする機能です。 + チェックボックスにチェックを入れると、重複チェックの結果、重複している可能性のあるアイテムがすでに登録されている場合、連携を中止します。 + +4. [保存]ボタンをクリックします。 + +### XML用の設定を行う + +1. [SWORD API]をクリックして、[TSV/XML]をクリックします。 + +2. [XML]タブをクリックします。設定画面が開きます。 + ![XML設定](media/media/image458.png) + +3. 必要な項目の設定を行います。 + + - 登録方式:直接登録、ワークフロー登録のどちらかを選択します。 + - ワークフロー:登録方式でワークフローを選択した場合はワークフローを選択します。 + - アイテム重複チェック:連携時にすでに登録されているアイテムとタイトルなどのメタデータが重複しているかをチェックする機能です。 + チェックボックスにチェックを入れると、重複チェックの結果、重複している可能性のあるアイテムがすでに登録されている場合、連携を中止します。 + +4. [保存]ボタンをクリックします。 + +### JSON-LD用の設定を作成する + +事前に作成したOAuth2のアプリケーション、マッピング定義を利用して直接登録/ワークフロー登録どちらかの登録方式を指定します。 +また、連携実行時にメタデータ補完を行う場合の優先順位を指定します。 + +1. [SWORD API]をクリックして、[JSON-LD]をクリックします。 + +2. [作成]タブを選択します。 + ![JSON-LD一覧](media/media/image459.png) + +3. 事前に登録したアプリケーションを選択、登録方式の選択、登録方式でワークフローを選択した場合はワークフローを選択します。 + マッピング定義を選択します。※ワークフローに設定されているアイテムタイプとマッピング定義のアイテムタイプは揃えて置く必要があります。 + マッピング定義の整合性に問題がある場合は、マッピング欄の下部に赤字で「✘」が表示されます。 + Meta data APIは連携時にメタデータを外部のAPIを使って補填する場合に利用します。 + + - Jal C API + - 医中誌 Web API + - CrossRef + - DataCite + - CiNii Research + - Original(※連携時にJSON-LDで指定しているメタデータ) + + から利用するAPI、優先順位を決定します。 + アイテム重複チェックとは、連携時にすでに登録されているアイテムとタイトルなどのメタデータが重複しているかをチェックする機能です。 + チェックボックスにチェックを入れると、重複チェックの結果、重複している可能性のあるアイテムがすでに登録されている場合、連携を中止します。 + + ![JSON-LD作成](media/media/image460.png) + 設定が完了したら[保存]ボタンをクリックします。 + +### JSON-LD用の編集を編集する +1. [一覧]タブを選択します。 + +2. 編集したい設定の行頭にある鉛筆のアイコン(![iconpen](media/media/image165.png))をクリックします。 + +3. 編集画面が表示されます。 + +4. 必要な項目を編集し、[保存]ボタンをクリックします。 + +### JSON-LD用の編集を削除する + +1. [一覧]タブを選択します。 + +2. 削除したい設定の行頭にあるゴミ箱のアイコン(![icontrashbox](media/media/image166.png))をクリックします。 + +3. 削除されます。 + ## レコード管理 この章では、レコード管理の方法について説明します。 @@ -8613,6 +9595,8 @@ Session activityを参照する方法を説明します。 [一覧]タブにリストが表示されます。[フィルターを追加]で項目を選択して値を適用すると、フィルタリングできます。 + コミュニティ管理者の場合は管理対象のコミュニティに属するユーザのみ表示されます。 + ![グラフィカル ユーザー インターフェイス, アプリケーション, メール 自動的に生成された説明](media/media/image364.png) 271. 行頭に表示されている目のアイコン(iconeye.tif![iconeye](media/media/image111.png))をクリックします。 @@ -8639,6 +9623,7 @@ Session activityを参照する方法を説明します。 | Password | パスワードを入力します。 | | Active | 作成したユーザのログインを許可する場合、Activeをチェックします。 | | Roles | ユーザのロールを選択します。 | +| Groups | ユーザのグループを選択します。 | | Send User Notification | ユーザの追加についてメール送信する場合、チェックします。 | 1. [保存]をクリックします。 @@ -9777,11 +10762,11 @@ DOIが付与されたアイテムをすでに登録している場合、設定 ### サイトライセンスを設定する -サイトライセンスを認可するIPアドレスを設定する方法を説明します。サイトライセンスを認可されたIPアドレスからのアクセスであれば、課金ファイルが無料でダウンロードできます。また、サイトライセンスが認可されているIPアドレスからのアクセスであってもアイテムタイプごとに無料ダウンロード対象から除外することができます。レポート画面にてサイトライセンスユーザの利用状況をフィードバックすることができます。 - +サイトライセンスを認可するIPアドレスを設定する方法を説明します。サイトライセンスを認可されたIPアドレスからのアクセスであれば、課金ファイルが無料でダウンロードできます。また、サイトライセンスが認可されているIPアドレスからのアクセスであってもアイテムタイプごとに無料ダウンロード対象から除外することができます。レポート画面にてサイトライセンスユーザの利用状況をフィードバックすることができます。サイトライセンスはコミュニティごとに設定することができます。 1. [設定]をクリックして[サイトライセンス]をクリックします。 サイトライセンス認可するための設定画面が表示されます。 + コミュニティ管理者の場合は管理対象のコミュニティが設定したサイトライセンスのみが表示されます。 @@ -10097,6 +11082,46 @@ PDFファイルのプレビューを設定する方法を説明します。 設定が保存されます。 +## ログ管理 + +この章では、ログの管理方法について説明します。 + +### 基本監査ログをエクスポートする + +基本監査ログの全件エクスポートを行う方法を説明します。 + +1. [ログ管理]をクリックして[エクスポート]をクリックします。 + + ファイルをエクスポートする画面が表示されます。 + +![基本監査ログエクスポート画面](media/media/image448.png) + + + +2. 処理を行う場合は、[エクスポート]をクリックします。 + + [エクスポート]をクリックすると、全件出力を実行してよいかの確認ダイアログが表示されます。表示されたダイアログのボタンを操作します。 + +![基本監査ログエクスポート実行確認ダイアログ](media/media/image449.png) + +3. [実行]を選択します。全件エクスポート処理が実行されます。 + + 正常に処理が完了するとダウンロードのURLが画面上に表示されます。 + + URLをクリックするとzipファイル(export\_log.zip)がダウンロード出来ます。 + + エクスポートファイルには基本監査ログがtsv形式で格納されます。 + + **出力されるtsvファイルは、「user\_activity\_logs\_yyMMddhhmmss.tsv」のファイル名で出力されます。** + +4. 処理を行わない場合は、[キャンセル]をクリックします。 + + ボタンの初期状態は非活性です。エクスポートを実行中は活性となり、クリックすることが出来ます。 + + **[キャンセル]をクリックすると、全件エクスポートの処理をキャンセルしてよいかの確認ダイアログを表示します。表示されたダイアログのボタンを操作します。** + +![基本監査ログエクスポートキャンセルダイアログ](media/media/image450.png) + ## メンテナンス この章では、メンテナンスの管理方法について説明します。 diff --git a/docs/manuals/ADMIN/base/book.json b/docs/manuals/ADMIN/base/book.json index a9909d01..fdb41aed 100644 --- a/docs/manuals/ADMIN/base/book.json +++ b/docs/manuals/ADMIN/base/book.json @@ -5,6 +5,10 @@ "language":"ja", "plugins":[ "intopic-toc", - "back-to-top-button" + "back-to-top-button", + "anchors", + "collapsible-chapters", + "hide-published-with", + "plantuml-cloud" ] } \ No newline at end of file diff --git a/docs/manuals/ADMIN/base/media/media/image100.png b/docs/manuals/ADMIN/base/media/media/image100.png index d08ffa64..293d6ae7 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image100.png and b/docs/manuals/ADMIN/base/media/media/image100.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image101.png b/docs/manuals/ADMIN/base/media/media/image101.png index 55943ab5..c23f0ee1 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image101.png and b/docs/manuals/ADMIN/base/media/media/image101.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image102.png b/docs/manuals/ADMIN/base/media/media/image102.png index 3ec720d8..08fd37bc 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image102.png and b/docs/manuals/ADMIN/base/media/media/image102.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image192.png b/docs/manuals/ADMIN/base/media/media/image192.png index dec6daf1..850e8e84 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image192.png and b/docs/manuals/ADMIN/base/media/media/image192.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image206.png b/docs/manuals/ADMIN/base/media/media/image206.png index 062ded1d..eeb44698 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image206.png and b/docs/manuals/ADMIN/base/media/media/image206.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image209.png b/docs/manuals/ADMIN/base/media/media/image209.png index 3e03415a..4e744f37 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image209.png and b/docs/manuals/ADMIN/base/media/media/image209.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image210.png b/docs/manuals/ADMIN/base/media/media/image210.png index 99407fec..dc29ead2 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image210.png and b/docs/manuals/ADMIN/base/media/media/image210.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image211.png b/docs/manuals/ADMIN/base/media/media/image211.png index c286fa70..9233aa5d 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image211.png and b/docs/manuals/ADMIN/base/media/media/image211.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image212.png b/docs/manuals/ADMIN/base/media/media/image212.png index a4002abb..0508fc8f 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image212.png and b/docs/manuals/ADMIN/base/media/media/image212.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image213.png b/docs/manuals/ADMIN/base/media/media/image213.png index 5382cdec..95184c70 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image213.png and b/docs/manuals/ADMIN/base/media/media/image213.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image214.png b/docs/manuals/ADMIN/base/media/media/image214.png index dd7924ec..efea5997 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image214.png and b/docs/manuals/ADMIN/base/media/media/image214.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image226.png b/docs/manuals/ADMIN/base/media/media/image226.png index 56abb797..63bc900a 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image226.png and b/docs/manuals/ADMIN/base/media/media/image226.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image227.png b/docs/manuals/ADMIN/base/media/media/image227.png index f04c0732..b0a425c0 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image227.png and b/docs/manuals/ADMIN/base/media/media/image227.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image228.png b/docs/manuals/ADMIN/base/media/media/image228.png index 5edefc8c..201d3de0 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image228.png and b/docs/manuals/ADMIN/base/media/media/image228.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image229.png b/docs/manuals/ADMIN/base/media/media/image229.png index 9406b9ab..952fd1d9 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image229.png and b/docs/manuals/ADMIN/base/media/media/image229.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image231.png b/docs/manuals/ADMIN/base/media/media/image231.png index 146b9e02..0454dd3d 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image231.png and b/docs/manuals/ADMIN/base/media/media/image231.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image232.png b/docs/manuals/ADMIN/base/media/media/image232.png index b0f14501..862c7dc5 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image232.png and b/docs/manuals/ADMIN/base/media/media/image232.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image233.png b/docs/manuals/ADMIN/base/media/media/image233.png index ee01adb2..0dacc5c2 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image233.png and b/docs/manuals/ADMIN/base/media/media/image233.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image236.png b/docs/manuals/ADMIN/base/media/media/image236.png index aa8ee122..e002766b 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image236.png and b/docs/manuals/ADMIN/base/media/media/image236.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image237.png b/docs/manuals/ADMIN/base/media/media/image237.png index c165231c..9c505b11 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image237.png and b/docs/manuals/ADMIN/base/media/media/image237.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image238.png b/docs/manuals/ADMIN/base/media/media/image238.png index b184cb65..fe04d9bb 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image238.png and b/docs/manuals/ADMIN/base/media/media/image238.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image239.png b/docs/manuals/ADMIN/base/media/media/image239.png index 4687ab63..50f37948 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image239.png and b/docs/manuals/ADMIN/base/media/media/image239.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image240.png b/docs/manuals/ADMIN/base/media/media/image240.png index dfcb2005..e03c7ba6 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image240.png and b/docs/manuals/ADMIN/base/media/media/image240.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image242.png b/docs/manuals/ADMIN/base/media/media/image242.png index c974a776..0a89dd46 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image242.png and b/docs/manuals/ADMIN/base/media/media/image242.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image243.png b/docs/manuals/ADMIN/base/media/media/image243.png index 19f29db4..493196fe 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image243.png and b/docs/manuals/ADMIN/base/media/media/image243.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image246.png b/docs/manuals/ADMIN/base/media/media/image246.png index 0b1e0f2d..6091219d 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image246.png and b/docs/manuals/ADMIN/base/media/media/image246.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image249.png b/docs/manuals/ADMIN/base/media/media/image249.png index b67b0f74..1922e790 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image249.png and b/docs/manuals/ADMIN/base/media/media/image249.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image251.png b/docs/manuals/ADMIN/base/media/media/image251.png index 8baf6944..05d5a578 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image251.png and b/docs/manuals/ADMIN/base/media/media/image251.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image252.png b/docs/manuals/ADMIN/base/media/media/image252.png index 4ace1455..c5805ae9 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image252.png and b/docs/manuals/ADMIN/base/media/media/image252.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image254.png b/docs/manuals/ADMIN/base/media/media/image254.png index 7ee145c1..9b675879 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image254.png and b/docs/manuals/ADMIN/base/media/media/image254.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image257.png b/docs/manuals/ADMIN/base/media/media/image257.png index 3c8c6c6d..4d92d9fe 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image257.png and b/docs/manuals/ADMIN/base/media/media/image257.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image259.png b/docs/manuals/ADMIN/base/media/media/image259.png index 89deaf2d..adea7aa0 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image259.png and b/docs/manuals/ADMIN/base/media/media/image259.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image261.png b/docs/manuals/ADMIN/base/media/media/image261.png index 970375dc..e4704bb5 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image261.png and b/docs/manuals/ADMIN/base/media/media/image261.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image264.png b/docs/manuals/ADMIN/base/media/media/image264.png index ca0d2b73..01c163a7 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image264.png and b/docs/manuals/ADMIN/base/media/media/image264.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image265.png b/docs/manuals/ADMIN/base/media/media/image265.png index c257db4d..443dc51f 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image265.png and b/docs/manuals/ADMIN/base/media/media/image265.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image365.png b/docs/manuals/ADMIN/base/media/media/image365.png index e5e314fd..b9b518f0 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image365.png and b/docs/manuals/ADMIN/base/media/media/image365.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image366.png b/docs/manuals/ADMIN/base/media/media/image366.png index ea5294da..f3c4f7f2 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image366.png and b/docs/manuals/ADMIN/base/media/media/image366.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image440.png b/docs/manuals/ADMIN/base/media/media/image440.png new file mode 100644 index 00000000..7362d390 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image440.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image441.png b/docs/manuals/ADMIN/base/media/media/image441.png new file mode 100644 index 00000000..c37499a6 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image441.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image442.png b/docs/manuals/ADMIN/base/media/media/image442.png new file mode 100644 index 00000000..565eef1f Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image442.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image444.png b/docs/manuals/ADMIN/base/media/media/image444.png new file mode 100644 index 00000000..7503c21e Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image444.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image445.png b/docs/manuals/ADMIN/base/media/media/image445.png new file mode 100644 index 00000000..07431242 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image445.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image446.png b/docs/manuals/ADMIN/base/media/media/image446.png new file mode 100644 index 00000000..b24b2643 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image446.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image447.png b/docs/manuals/ADMIN/base/media/media/image447.png new file mode 100644 index 00000000..a85fc6c7 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image447.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image448.png b/docs/manuals/ADMIN/base/media/media/image448.png new file mode 100644 index 00000000..d1e1028c Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image448.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image449.png b/docs/manuals/ADMIN/base/media/media/image449.png new file mode 100644 index 00000000..1bee33ac Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image449.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image450.png b/docs/manuals/ADMIN/base/media/media/image450.png new file mode 100644 index 00000000..4e58eed9 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image450.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image451.png b/docs/manuals/ADMIN/base/media/media/image451.png new file mode 100644 index 00000000..50559e40 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image451.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image452.png b/docs/manuals/ADMIN/base/media/media/image452.png new file mode 100644 index 00000000..be69511e Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image452.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image453.png b/docs/manuals/ADMIN/base/media/media/image453.png new file mode 100644 index 00000000..5368ad0d Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image453.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image454.png b/docs/manuals/ADMIN/base/media/media/image454.png new file mode 100644 index 00000000..64713af2 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image454.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image455.png b/docs/manuals/ADMIN/base/media/media/image455.png new file mode 100644 index 00000000..874cd9ad Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image455.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image456.png b/docs/manuals/ADMIN/base/media/media/image456.png new file mode 100644 index 00000000..db4b6a72 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image456.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image457.png b/docs/manuals/ADMIN/base/media/media/image457.png new file mode 100644 index 00000000..3f5a768f Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image457.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image458.png b/docs/manuals/ADMIN/base/media/media/image458.png new file mode 100644 index 00000000..15034a39 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image458.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image459.png b/docs/manuals/ADMIN/base/media/media/image459.png new file mode 100644 index 00000000..465496da Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image459.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image460.png b/docs/manuals/ADMIN/base/media/media/image460.png new file mode 100644 index 00000000..c349ac07 Binary files /dev/null and b/docs/manuals/ADMIN/base/media/media/image460.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image76.png b/docs/manuals/ADMIN/base/media/media/image76.png index a1dc9004..706066a2 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image76.png and b/docs/manuals/ADMIN/base/media/media/image76.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image92.png b/docs/manuals/ADMIN/base/media/media/image92.png index 4005342f..bc1a0eb2 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image92.png and b/docs/manuals/ADMIN/base/media/media/image92.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image94.png b/docs/manuals/ADMIN/base/media/media/image94.png index fe629e94..bc1a0eb2 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image94.png and b/docs/manuals/ADMIN/base/media/media/image94.png differ diff --git a/docs/manuals/ADMIN/base/media/media/image97.png b/docs/manuals/ADMIN/base/media/media/image97.png index f2aa9bc3..b383cae5 100644 Binary files a/docs/manuals/ADMIN/base/media/media/image97.png and b/docs/manuals/ADMIN/base/media/media/image97.png differ diff --git a/docs/manuals/ADMIN/html/GLOSSARY.html b/docs/manuals/ADMIN/html/GLOSSARY.html new file mode 100644 index 00000000..b8b2d9aa --- /dev/null +++ b/docs/manuals/ADMIN/html/GLOSSARY.html @@ -0,0 +1,296 @@ + + + + + + · システム管理マニュアル + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + + + + + + + + +
    + +
    + +
    + + + + + + + + +
    +
    + +
    +
    + +
    + + + +
    + +
    +
    +
    + +

    results matching ""

    +
      + +
      +
      + +

      No results matching ""

      + +
      +
      +
      + +
      +
      + +
      + + + + + + +
      + + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/manuals/ADMIN/html/gitbook/@honkit/honkit-plugin-highlight/ebook.css b/docs/manuals/ADMIN/html/gitbook/@honkit/honkit-plugin-highlight/ebook.css new file mode 100644 index 00000000..12a99c7f --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/@honkit/honkit-plugin-highlight/ebook.css @@ -0,0 +1,157 @@ +pre, +code { + /* From highlight.js@11.8.0/styles/tomorrow.css */ + /*! + Theme: Tomorrow + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/ +} +pre pre code.hljs, +code pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em; +} +pre code.hljs, +code code.hljs { + padding: 3px 5px; +} +pre .hljs, +code .hljs { + color: #4d4d4c; + background: #fff; +} +pre .hljs ::selection, +code .hljs ::selection, +pre .hljs::selection, +code .hljs::selection { + background-color: #d6d6d6; + color: #4d4d4c; +} +pre .hljs-comment, +code .hljs-comment { + color: #8e908c; +} +pre .hljs-tag, +code .hljs-tag { + color: #969896; +} +pre .hljs-operator, +code .hljs-operator, +pre .hljs-punctuation, +code .hljs-punctuation, +pre .hljs-subst, +code .hljs-subst { + color: #4d4d4c; +} +pre .hljs-operator, +code .hljs-operator { + opacity: 0.7; +} +pre .hljs-bullet, +code .hljs-bullet, +pre .hljs-deletion, +code .hljs-deletion, +pre .hljs-name, +code .hljs-name, +pre .hljs-selector-tag, +code .hljs-selector-tag, +pre .hljs-template-variable, +code .hljs-template-variable, +pre .hljs-variable, +code .hljs-variable { + color: #c82829; +} +pre .hljs-attr, +code .hljs-attr, +pre .hljs-link, +code .hljs-link, +pre .hljs-literal, +code .hljs-literal, +pre .hljs-number, +code .hljs-number, +pre .hljs-symbol, +code .hljs-symbol, +pre .hljs-variable.constant_, +code .hljs-variable.constant_ { + color: #f5871f; +} +pre .hljs-class .hljs-title, +code .hljs-class .hljs-title, +pre .hljs-title, +code .hljs-title, +pre .hljs-title.class_, +code .hljs-title.class_ { + color: #eab700; +} +pre .hljs-strong, +code .hljs-strong { + font-weight: 700; + color: #eab700; +} +pre .hljs-addition, +code .hljs-addition, +pre .hljs-code, +code .hljs-code, +pre .hljs-string, +code .hljs-string, +pre .hljs-title.class_.inherited__, +code .hljs-title.class_.inherited__ { + color: #718c00; +} +pre .hljs-built_in, +code .hljs-built_in, +pre .hljs-doctag, +code .hljs-doctag, +pre .hljs-keyword.hljs-atrule, +code .hljs-keyword.hljs-atrule, +pre .hljs-quote, +code .hljs-quote, +pre .hljs-regexp, +code .hljs-regexp { + color: #3e999f; +} +pre .hljs-attribute, +code .hljs-attribute, +pre .hljs-function .hljs-title, +code .hljs-function .hljs-title, +pre .hljs-section, +code .hljs-section, +pre .hljs-title.function_, +code .hljs-title.function_, +pre .ruby .hljs-property, +code .ruby .hljs-property { + color: #4271ae; +} +pre .diff .hljs-meta, +code .diff .hljs-meta, +pre .hljs-keyword, +code .hljs-keyword, +pre .hljs-template-tag, +code .hljs-template-tag, +pre .hljs-type, +code .hljs-type { + color: #8959a8; +} +pre .hljs-emphasis, +code .hljs-emphasis { + color: #8959a8; + font-style: italic; +} +pre .hljs-meta, +code .hljs-meta, +pre .hljs-meta .hljs-keyword, +code .hljs-meta .hljs-keyword, +pre .hljs-meta .hljs-string, +code .hljs-meta .hljs-string { + color: #a3685a; +} +pre .hljs-meta .hljs-keyword, +code .hljs-meta .hljs-keyword, +pre .hljs-meta-keyword, +code .hljs-meta-keyword { + font-weight: 700; +} diff --git a/docs/manuals/ADMIN/html/gitbook/@honkit/honkit-plugin-highlight/website.css b/docs/manuals/ADMIN/html/gitbook/@honkit/honkit-plugin-highlight/website.css new file mode 100644 index 00000000..8ecc6148 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/@honkit/honkit-plugin-highlight/website.css @@ -0,0 +1,407 @@ +.book .book-body .page-wrapper .page-inner section.normal pre, +.book .book-body .page-wrapper .page-inner section.normal code { + /* From highlight.js@11.8.0/styles/tomorrow.css */ + /*! + Theme: Tomorrow + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/ +} +.book .book-body .page-wrapper .page-inner section.normal pre pre code.hljs, +.book .book-body .page-wrapper .page-inner section.normal code pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em; +} +.book .book-body .page-wrapper .page-inner section.normal pre code.hljs, +.book .book-body .page-wrapper .page-inner section.normal code code.hljs { + padding: 3px 5px; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs, +.book .book-body .page-wrapper .page-inner section.normal code .hljs { + color: #4d4d4c; + background: #fff; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs ::selection, +.book .book-body .page-wrapper .page-inner section.normal code .hljs ::selection, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs::selection, +.book .book-body .page-wrapper .page-inner section.normal code .hljs::selection { + background-color: #d6d6d6; + color: #4d4d4c; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-comment, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-comment { + color: #8e908c; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-tag, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-tag { + color: #969896; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-operator, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-operator, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-punctuation, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-punctuation, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-subst, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-subst { + color: #4d4d4c; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-operator, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-operator { + opacity: 0.7; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-bullet, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-bullet, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-deletion, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-deletion, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-name, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-name, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-selector-tag, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-selector-tag, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-template-variable, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-template-variable, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-variable, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-variable { + color: #c82829; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-attr, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-attr, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-link, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-link, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-literal, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-literal, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-number, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-number, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-symbol, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-symbol, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-variable.constant_, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-variable.constant_ { + color: #f5871f; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-class .hljs-title, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-class .hljs-title, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-title, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-title, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-title.class_, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-title.class_ { + color: #eab700; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-strong, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-strong { + font-weight: 700; + color: #eab700; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-addition, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-addition, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-code, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-code, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-string, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-string, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-title.class_.inherited__, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-title.class_.inherited__ { + color: #718c00; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-built_in, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-built_in, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-doctag, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-doctag, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-keyword.hljs-atrule, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-keyword.hljs-atrule, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-quote, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-quote, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-regexp, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-regexp { + color: #3e999f; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-attribute, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-attribute, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-function .hljs-title, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-function .hljs-title, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-section, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-section, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-title.function_, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-title.function_, +.book .book-body .page-wrapper .page-inner section.normal pre .ruby .hljs-property, +.book .book-body .page-wrapper .page-inner section.normal code .ruby .hljs-property { + color: #4271ae; +} +.book .book-body .page-wrapper .page-inner section.normal pre .diff .hljs-meta, +.book .book-body .page-wrapper .page-inner section.normal code .diff .hljs-meta, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-keyword, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-keyword, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-template-tag, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-template-tag, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-type, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-type { + color: #8959a8; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-emphasis, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-emphasis { + color: #8959a8; + font-style: italic; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-meta, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-meta, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-meta .hljs-keyword, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-meta .hljs-keyword, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-meta .hljs-string, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-meta .hljs-string { + color: #a3685a; +} +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-meta .hljs-keyword, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-meta .hljs-keyword, +.book .book-body .page-wrapper .page-inner section.normal pre .hljs-meta-keyword, +.book .book-body .page-wrapper .page-inner section.normal code .hljs-meta-keyword { + font-weight: 700; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code { + /* From highlight.js@11.8.0/styles/solarized-light.css */ + /*! + Theme: Solarized Light + Author: Ethan Schoonover (modified by aramisgithub) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/ +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre pre code.hljs, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre code.hljs, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code code.hljs { + padding: 3px 5px; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs { + color: #586e75; + background: #fdf6e3; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs ::selection, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs ::selection, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs::selection, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs::selection { + background-color: #93a1a1; + color: #586e75; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-comment, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-comment { + color: #839496; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-tag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-tag { + color: #657b83; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-operator, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-operator, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-punctuation, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-punctuation, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-subst, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-subst { + color: #586e75; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-operator, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-operator { + opacity: 0.7; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-bullet, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-bullet, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-deletion, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-deletion, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-name, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-name, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-selector-tag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-selector-tag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-template-variable, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-template-variable, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-variable, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-variable { + color: #dc322f; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-attr, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-attr, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-link, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-link, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-literal, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-literal, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-number, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-number, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-symbol, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-symbol, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-variable.constant_, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-variable.constant_ { + color: #cb4b16; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-class .hljs-title, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-class .hljs-title, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-title, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-title, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-title.class_, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-title.class_ { + color: #b58900; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-strong, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-strong { + font-weight: 700; + color: #b58900; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-addition, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-addition, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-code, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-code, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-string, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-string, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-title.class_.inherited__, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-title.class_.inherited__ { + color: #859900; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-built_in, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-built_in, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-doctag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-doctag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-keyword.hljs-atrule, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-keyword.hljs-atrule, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-quote, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-quote, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-regexp, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-regexp { + color: #2aa198; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-attribute, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-attribute, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-function .hljs-title, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-function .hljs-title, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-section, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-section, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-title.function_, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-title.function_, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .ruby .hljs-property, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .ruby .hljs-property { + color: #268bd2; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .diff .hljs-meta, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .diff .hljs-meta, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-template-tag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-template-tag, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-type, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-type { + color: #6c71c4; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-emphasis, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-emphasis { + color: #6c71c4; + font-style: italic; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-meta, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-meta, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-meta .hljs-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-meta .hljs-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-meta .hljs-string, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-meta .hljs-string { + color: #d33682; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-meta .hljs-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-meta .hljs-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre .hljs-meta-keyword, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code .hljs-meta-keyword { + font-weight: 700; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code { + /* From highlight.js@11.8.0/styles/tomorrow-night-bright.css */ +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre pre code.hljs, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre code.hljs, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code code.hljs { + padding: 3px 5px; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-comment, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-comment, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-quote, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-quote { + color: #969896; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-deletion, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-deletion, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-name, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-name, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-regexp, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-regexp, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-selector-class, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-selector-class, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-selector-id, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-selector-id, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-tag, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-tag, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-template-variable, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-template-variable, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-variable, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-variable { + color: #d54e53; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-built_in, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-built_in, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-link, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-link, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-literal, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-literal, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-meta, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-meta, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-number, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-number, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-params, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-params, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-type, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-type { + color: #e78c45; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-attribute, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-attribute { + color: #e7c547; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-addition, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-addition, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-bullet, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-bullet, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-string, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-string, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-symbol, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-symbol { + color: #b9ca4a; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-section, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-section, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-title, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-title { + color: #7aa6da; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-keyword, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-keyword, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-selector-tag, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-selector-tag { + color: #c397d8; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs { + background: #000; + color: #eaeaea; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-emphasis, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-emphasis { + font-style: italic; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre .hljs-strong, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code .hljs-strong { + font-weight: 700; +} diff --git a/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/FontAwesome.otf b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/FontAwesome.otf new file mode 100644 index 00000000..d4de13e8 Binary files /dev/null and b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/FontAwesome.otf differ diff --git a/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.eot b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.eot new file mode 100644 index 00000000..c7b00d2b Binary files /dev/null and b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.eot differ diff --git a/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.svg b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.svg new file mode 100644 index 00000000..8b66187f --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.svg @@ -0,0 +1,685 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.ttf b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.ttf new file mode 100644 index 00000000..f221e50a Binary files /dev/null and b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.ttf differ diff --git a/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.woff b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.woff new file mode 100644 index 00000000..6e7483cf Binary files /dev/null and b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.woff differ diff --git a/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.woff2 b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.woff2 new file mode 100644 index 00000000..7eb74fd1 Binary files /dev/null and b/docs/manuals/ADMIN/html/gitbook/fonts/fontawesome/fontawesome-webfont.woff2 differ diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-anchors/plugin.css b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-anchors/plugin.css new file mode 100644 index 00000000..adf3e9ec --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-anchors/plugin.css @@ -0,0 +1,30 @@ + +a.plugin-anchor { + color: inherit !important; + display: none; + margin-left: -30px; + padding-left: 40px; + cursor: pointer; + position: absolute; + top: 0; + left: 0; + bottom: 0; +} + +a.plugin-anchor i { + margin-left: -30px; + font-size: 15px !important; +} + +h1, h2, h3, h4, h5, h6 { + position: relative; +} + +h1:hover a.plugin-anchor, h2:hover a.plugin-anchor, h3:hover a.plugin-anchor, +h4:hover a.plugin-anchor, h5:hover a.plugin-anchor, h6:hover a.plugin-anchor { + display: inline-block; +} + +.book .book-body .page-wrapper .page-inner section.normal { + overflow: visible; +} diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-back-to-top-button/plugin.css b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-back-to-top-button/plugin.css new file mode 100644 index 00000000..a418cbb5 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-back-to-top-button/plugin.css @@ -0,0 +1,55 @@ +.back-to-top { + position: fixed; + bottom: 25px; + right: 25px; + background: rgba(0, 0, 0, 0.5); + width: 50px; + height: 50px; + display: block; + text-decoration: none; + -webkit-border-radius: 35px; + -moz-border-radius: 35px; + border-radius: 35px; + display: none; +} +.back-to-top i { + color: #fff; + margin: 0; + position: relative; + left: 15px; + top: 14px; + font-size: 22px; +} +.back-to-top:hover { + background: rgba(0, 0, 0, 0.9); + cursor: pointer; +} +.book.color-theme-1 .back-to-top { + background: rgba(112, 66, 20, 0.5); +} +.book.color-theme-1 .back-to-top i { + color: #f3eacb; +} +.book.color-theme-1 .back-to-top:hover { + background: rgba(112, 66, 20, 0.9); +} +.book.color-theme-2 .back-to-top { + background: rgba(189, 202, 219, 0.5); +} +.book.color-theme-2 .back-to-top i { + color: #1C1F2B; +} +.book.color-theme-2 .back-to-top:hover { + background: rgba(189, 202, 219, 0.9); +} + +@media only screen + and (min-device-width: 320px) + and (max-device-width: 480px) + and (-webkit-min-device-pixel-ratio: 2) + and (orientation: portrait) { + .back-to-top { + bottom: 10px; + right: 10px; + } +} \ No newline at end of file diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-back-to-top-button/plugin.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-back-to-top-button/plugin.js new file mode 100644 index 00000000..abd35237 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-back-to-top-button/plugin.js @@ -0,0 +1,25 @@ +var gitbook = window.gitbook; + +gitbook.events.on('page.change', function() { + + var back_to_top_button = ['
      '].join(""); + $(".book").append(back_to_top_button) + + $(".back-to-top").hide(); + + $('.book-body,.body-inner').on('scroll', function () { + if ($(this).scrollTop() > 100) { + $('.back-to-top').fadeIn(); + } else { + $('.back-to-top').fadeOut(); + } + }); + + $('.back-to-top').click(function () { + $('.book-body,.body-inner').animate({ + scrollTop: 0 + }, 800); + return false; + }); + +}); diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-collapsible-chapters/collapsible-chapters.css b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-collapsible-chapters/collapsible-chapters.css new file mode 100644 index 00000000..73170e36 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-collapsible-chapters/collapsible-chapters.css @@ -0,0 +1,28 @@ +.book .book-summary .chapter > .articles { + overflow: hidden; + max-height: 0px; +} + +.book .book-summary .chapter.expanded > .articles { + max-height: 9999px; +} + +.book .book-summary .exc-trigger { + position: absolute; + left: 12px; + top: 12px; +} + +.book .book-summary ul.summary li a, +.book .book-summary ul.summary li span { + padding-left: 30px; +} + +.book .book-summary .exc-trigger:before { + content: "\f0da"; +} + +.book .book-summary .expanded > a .exc-trigger:before, +.book .book-summary .expanded > span .exc-trigger:before { + content: "\f0d7"; +} diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-collapsible-chapters/collapsible-chapters.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-collapsible-chapters/collapsible-chapters.js new file mode 100644 index 00000000..a415d553 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-collapsible-chapters/collapsible-chapters.js @@ -0,0 +1,68 @@ +require(['gitbook', 'jQuery'], function(gitbook, $) { + var TOGGLE_CLASSNAME = 'expanded', + CHAPTER = '.chapter', + ARTICLES = '.articles', + TRIGGER_TEMPLATE = '', + LS_NAMESPACE = 'expChapters'; + var init = function () { + // adding the trigger element to each ARTICLES parent and binding the event + $(ARTICLES) + .parent(CHAPTER) + .children('a,span') + .append( + $(TRIGGER_TEMPLATE) + .on('click', function(e) { + e.preventDefault(); + e.stopPropagation(); + toggle($(e.target).closest(CHAPTER)); + }) + ); + expand(lsItem()); + //expand current selected chapter with it's parents + var activeChapter = $(CHAPTER + '.active'); + expand(activeChapter); + expand(activeChapter.parents(CHAPTER)); + + + } + var toggle = function ($chapter) { + if ($chapter.hasClass('expanded')) { + collapse($chapter); + } else { + expand($chapter); + } + } + var collapse = function ($chapter) { + if ($chapter.length && $chapter.hasClass(TOGGLE_CLASSNAME)) { + $chapter.removeClass(TOGGLE_CLASSNAME); + lsItem($chapter); + } + } + var expand = function ($chapter) { + if ($chapter.length && !$chapter.hasClass(TOGGLE_CLASSNAME)) { + $chapter.addClass(TOGGLE_CLASSNAME); + lsItem($chapter); + } + } + var lsItem = function () { + var map = JSON.parse(localStorage.getItem(LS_NAMESPACE)) || {} + if (arguments.length) { + var $chapters = arguments[0]; + $chapters.each(function (index, element) { + var level = $(this).data('level'); + var value = $(this).hasClass(TOGGLE_CLASSNAME); + map[level] = value; + }) + localStorage.setItem(LS_NAMESPACE, JSON.stringify(map)); + } else { + return $(CHAPTER).map(function(index, element){ + if (map[$(this).data('level')]) { + return this; + } + }) + } + } + gitbook.events.bind('page.change', function() { + init() + }); +}); diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-fontsettings/fontsettings.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-fontsettings/fontsettings.js new file mode 100644 index 00000000..ff7be714 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-fontsettings/fontsettings.js @@ -0,0 +1,240 @@ +require(['gitbook', 'jquery'], function(gitbook, $) { + // Configuration + var MAX_SIZE = 4, + MIN_SIZE = 0, + BUTTON_ID; + + // Current fontsettings state + var fontState; + + // Default themes + var THEMES = [ + { + config: 'white', + text: 'White', + id: 0 + }, + { + config: 'sepia', + text: 'Sepia', + id: 1 + }, + { + config: 'night', + text: 'Night', + id: 2 + } + ]; + + // Default font families + var FAMILIES = [ + { + config: 'serif', + text: 'Serif', + id: 0 + }, + { + config: 'sans', + text: 'Sans', + id: 1 + } + ]; + + // Return configured themes + function getThemes() { + return THEMES; + } + + // Modify configured themes + function setThemes(themes) { + THEMES = themes; + updateButtons(); + } + + // Return configured font families + function getFamilies() { + return FAMILIES; + } + + // Modify configured font families + function setFamilies(families) { + FAMILIES = families; + updateButtons(); + } + + // Save current font settings + function saveFontSettings() { + gitbook.storage.set('fontState', fontState); + update(); + } + + // Increase font size + function enlargeFontSize(e) { + e.preventDefault(); + if (fontState.size >= MAX_SIZE) return; + + fontState.size++; + saveFontSettings(); + } + + // Decrease font size + function reduceFontSize(e) { + e.preventDefault(); + if (fontState.size <= MIN_SIZE) return; + + fontState.size--; + saveFontSettings(); + } + + // Change font family + function changeFontFamily(configName, e) { + if (e && e instanceof Event) { + e.preventDefault(); + } + + var familyId = getFontFamilyId(configName); + fontState.family = familyId; + saveFontSettings(); + } + + // Change type of color theme + function changeColorTheme(configName, e) { + if (e && e instanceof Event) { + e.preventDefault(); + } + + var $book = gitbook.state.$book; + + // Remove currently applied color theme + if (fontState.theme !== 0) + $book.removeClass('color-theme-'+fontState.theme); + + // Set new color theme + var themeId = getThemeId(configName); + fontState.theme = themeId; + if (fontState.theme !== 0) + $book.addClass('color-theme-'+fontState.theme); + + saveFontSettings(); + } + + // Return the correct id for a font-family config key + // Default to first font-family + function getFontFamilyId(configName) { + // Search for plugin configured font family + var configFamily = $.grep(FAMILIES, function(family) { + return family.config == configName; + })[0]; + // Fallback to default font family + return (!!configFamily)? configFamily.id : 0; + } + + // Return the correct id for a theme config key + // Default to first theme + function getThemeId(configName) { + // Search for plugin configured theme + var configTheme = $.grep(THEMES, function(theme) { + return theme.config == configName; + })[0]; + // Fallback to default theme + return (!!configTheme)? configTheme.id : 0; + } + + function update() { + var $book = gitbook.state.$book; + + $('.font-settings .font-family-list li').removeClass('active'); + $('.font-settings .font-family-list li:nth-child('+(fontState.family+1)+')').addClass('active'); + + $book[0].className = $book[0].className.replace(/\bfont-\S+/g, ''); + $book.addClass('font-size-'+fontState.size); + $book.addClass('font-family-'+fontState.family); + + if(fontState.theme !== 0) { + $book[0].className = $book[0].className.replace(/\bcolor-theme-\S+/g, ''); + $book.addClass('color-theme-'+fontState.theme); + } + } + + function init(config) { + // Search for plugin configured font family + var configFamily = getFontFamilyId(config.family), + configTheme = getThemeId(config.theme); + + // Instantiate font state object + fontState = gitbook.storage.get('fontState', { + size: config.size || 2, + family: configFamily, + theme: configTheme + }); + + update(); + } + + function updateButtons() { + // Remove existing fontsettings buttons + if (!!BUTTON_ID) { + gitbook.toolbar.removeButton(BUTTON_ID); + } + + // Create buttons in toolbar + BUTTON_ID = gitbook.toolbar.createButton({ + icon: 'fa fa-font', + label: 'Font Settings', + className: 'font-settings', + dropdown: [ + [ + { + text: 'A', + className: 'font-reduce', + onClick: reduceFontSize + }, + { + text: 'A', + className: 'font-enlarge', + onClick: enlargeFontSize + } + ], + $.map(FAMILIES, function(family) { + family.onClick = function(e) { + return changeFontFamily(family.config, e); + }; + + return family; + }), + $.map(THEMES, function(theme) { + theme.onClick = function(e) { + return changeColorTheme(theme.config, e); + }; + + return theme; + }) + ] + }); + } + + // Init configuration at start + gitbook.events.bind('start', function(e, config) { + var opts = config.fontsettings; + + // Generate buttons at start + updateButtons(); + + // Init current settings + init(opts); + }); + + // Expose API + gitbook.fontsettings = { + enlargeFontSize: enlargeFontSize, + reduceFontSize: reduceFontSize, + setTheme: changeColorTheme, + setFamily: changeFontFamily, + getThemes: getThemes, + setThemes: setThemes, + getFamilies: getFamilies, + setFamilies: setFamilies + }; +}); + + diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-fontsettings/website.css b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-fontsettings/website.css new file mode 100644 index 00000000..26591fe8 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-fontsettings/website.css @@ -0,0 +1,291 @@ +/* + * Theme 1 + */ +.color-theme-1 .dropdown-menu { + background-color: #111111; + border-color: #7e888b; +} +.color-theme-1 .dropdown-menu .dropdown-caret .caret-inner { + border-bottom: 9px solid #111111; +} +.color-theme-1 .dropdown-menu .buttons { + border-color: #7e888b; +} +.color-theme-1 .dropdown-menu .button { + color: #afa790; +} +.color-theme-1 .dropdown-menu .button:hover { + color: #73553c; +} +/* + * Theme 2 + */ +.color-theme-2 .dropdown-menu { + background-color: #2d3143; + border-color: #272a3a; +} +.color-theme-2 .dropdown-menu .dropdown-caret .caret-inner { + border-bottom: 9px solid #2d3143; +} +.color-theme-2 .dropdown-menu .buttons { + border-color: #272a3a; +} +.color-theme-2 .dropdown-menu .button { + color: #62677f; +} +.color-theme-2 .dropdown-menu .button:hover { + color: #f4f4f5; +} +.book .book-header .font-settings .font-enlarge { + line-height: 30px; + font-size: 1.4em; +} +.book .book-header .font-settings .font-reduce { + line-height: 30px; + font-size: 1em; +} +.book.color-theme-1 .book-body { + color: #704214; + background: #f3eacb; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section { + background: #f3eacb; +} +.book.color-theme-2 .book-body { + color: #bdcadb; + background: #1c1f2b; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section { + background: #1c1f2b; +} +.book.font-size-0 .book-body .page-inner section { + font-size: 1.2rem; +} +.book.font-size-1 .book-body .page-inner section { + font-size: 1.4rem; +} +.book.font-size-2 .book-body .page-inner section { + font-size: 1.6rem; +} +.book.font-size-3 .book-body .page-inner section { + font-size: 2.2rem; +} +.book.font-size-4 .book-body .page-inner section { + font-size: 4rem; +} +.book.font-family-0 { + font-family: Georgia, serif; +} +.book.font-family-1 { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal { + color: #704214; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal a { + color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h1, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h2, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h3, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h4, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h5, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h6 { + color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h1, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h2 { + border-color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal h6 { + color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal hr { + background-color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal blockquote { + border-color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal pre, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal code { + background: #fdf6e3; + color: #657b83; + border-color: #f8df9c; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal .highlight { + background-color: inherit; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal table th, +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal table td { + border-color: #f5d06c; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal table tr { + color: inherit; + background-color: #fdf6e3; + border-color: #444444; +} +.book.color-theme-1 .book-body .page-wrapper .page-inner section.normal table tr:nth-child(2n) { + background-color: #fbeecb; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal { + color: #bdcadb; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal a { + color: #3eb1d0; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h1, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h2, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h3, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h4, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h5, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h6 { + color: #fffffa; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h1, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h2 { + border-color: #373b4e; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal h6 { + color: #373b4e; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal hr { + background-color: #373b4e; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal blockquote { + border-color: #373b4e; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal pre, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal code { + color: #9dbed8; + background: #2d3143; + border-color: #2d3143; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal .highlight { + background-color: #282a39; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal table th, +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal table td { + border-color: #3b3f54; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal table tr { + color: #b6c2d2; + background-color: #2d3143; + border-color: #3b3f54; +} +.book.color-theme-2 .book-body .page-wrapper .page-inner section.normal table tr:nth-child(2n) { + background-color: #35394b; +} +.book.color-theme-1 .book-header { + color: #afa790; + background: transparent; +} +.book.color-theme-1 .book-header .btn { + color: #afa790; +} +.book.color-theme-1 .book-header .btn:hover { + color: #73553c; + background: none; +} +.book.color-theme-1 .book-header h1 { + color: #704214; +} +.book.color-theme-2 .book-header { + color: #7e888b; + background: transparent; +} +.book.color-theme-2 .book-header .btn { + color: #3b3f54; +} +.book.color-theme-2 .book-header .btn:hover { + color: #fffff5; + background: none; +} +.book.color-theme-2 .book-header h1 { + color: #bdcadb; +} +.book.color-theme-1 .book-body .navigation { + color: #afa790; +} +.book.color-theme-1 .book-body .navigation:hover { + color: #73553c; +} +.book.color-theme-2 .book-body .navigation { + color: #383f52; +} +.book.color-theme-2 .book-body .navigation:hover { + color: #fffff5; +} +/* + * Theme 1 + */ +.book.color-theme-1 .book-summary { + color: #afa790; + background: #111111; + border-right: 1px solid rgba(0, 0, 0, 0.07); +} +.book.color-theme-1 .book-summary .book-search { + background: transparent; +} +.book.color-theme-1 .book-summary .book-search input, +.book.color-theme-1 .book-summary .book-search input:focus { + border: 1px solid transparent; +} +.book.color-theme-1 .book-summary ul.summary li.divider { + background: #7e888b; + box-shadow: none; +} +.book.color-theme-1 .book-summary ul.summary li i.fa-check { + color: #33cc33; +} +.book.color-theme-1 .book-summary ul.summary li.done > a { + color: #877f6a; +} +.book.color-theme-1 .book-summary ul.summary li a, +.book.color-theme-1 .book-summary ul.summary li span { + color: #877f6a; + background: transparent; + font-weight: normal; +} +.book.color-theme-1 .book-summary ul.summary li.active > a, +.book.color-theme-1 .book-summary ul.summary li a:hover { + color: #704214; + background: transparent; + font-weight: normal; +} +/* + * Theme 2 + */ +.book.color-theme-2 .book-summary { + color: #bcc1d2; + background: #2d3143; + border-right: none; +} +.book.color-theme-2 .book-summary .book-search { + background: transparent; +} +.book.color-theme-2 .book-summary .book-search input, +.book.color-theme-2 .book-summary .book-search input:focus { + border: 1px solid transparent; +} +.book.color-theme-2 .book-summary ul.summary li.divider { + background: #272a3a; + box-shadow: none; +} +.book.color-theme-2 .book-summary ul.summary li i.fa-check { + color: #33cc33; +} +.book.color-theme-2 .book-summary ul.summary li.done > a { + color: #62687f; +} +.book.color-theme-2 .book-summary ul.summary li a, +.book.color-theme-2 .book-summary ul.summary li span { + color: #c1c6d7; + background: transparent; + font-weight: 600; +} +.book.color-theme-2 .book-summary ul.summary li.active > a, +.book.color-theme-2 .book-summary ul.summary li a:hover { + color: #f4f4f5; + background: #252737; + font-weight: 600; +} diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-hide-published-with/plugin.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-hide-published-with/plugin.js new file mode 100644 index 00000000..51758d42 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-hide-published-with/plugin.js @@ -0,0 +1,7 @@ +require(["gitbook"], function(gitbook) { + $('.gitbook-link').hide(); + gitbook.events.bind("page.change", function() { + console.log("Hello custom plugin") + $('.gitbook-link').hide(); + }); +}); diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/anchor.min.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/anchor.min.js new file mode 100644 index 00000000..8a40c190 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/anchor.min.js @@ -0,0 +1,7 @@ +// AnchorJS - v4.2.0 - 2019-01-01 +// https://github.com/bryanbraun/anchorjs +// Copyright (c) 2019 Bryan Braun; Licensed MIT +// +// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat +!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(this,function(){"use strict";return function(A){function f(A){A.icon=A.hasOwnProperty("icon")?A.icon:"",A.visible=A.hasOwnProperty("visible")?A.visible:"hover",A.placement=A.hasOwnProperty("placement")?A.placement:"right",A.ariaLabel=A.hasOwnProperty("ariaLabel")?A.ariaLabel:"Anchor",A.class=A.hasOwnProperty("class")?A.class:"",A.base=A.hasOwnProperty("base")?A.base:"",A.truncate=A.hasOwnProperty("truncate")?Math.floor(A.truncate):64,A.titleText=A.hasOwnProperty("titleText")?A.titleText:""}function p(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new Error("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],f(this.options),this.isTouchDevice=function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(A){var e,t,i,n,o,s,a,r,c,h,l,u,d=[];if(f(this.options),"touch"===(l=this.options.visible)&&(l=this.isTouchDevice()?"always":"hover"),A||(A="h2, h3, h4, h5, h6"),0===(e=p(A)).length)return this;for(function(){if(null===document.head.querySelector("style.anchorjs")){var A,e=document.createElement("style");e.className="anchorjs",e.appendChild(document.createTextNode("")),void 0===(A=document.head.querySelector('[rel="stylesheet"], style'))?document.head.appendChild(e):document.head.insertBefore(e,A),e.sheet.insertRule(" .anchorjs-link { opacity: 0; text-decoration: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }",e.sheet.cssRules.length),e.sheet.insertRule(" *:hover > .anchorjs-link, .anchorjs-link:focus { opacity: 1; }",e.sheet.cssRules.length),e.sheet.insertRule(" [data-anchorjs-icon]::after { content: attr(data-anchorjs-icon); }",e.sheet.cssRules.length),e.sheet.insertRule(' @font-face { font-family: "anchorjs-icons"; src: url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype"); }',e.sheet.cssRules.length)}}(),t=document.querySelectorAll("[id]"),i=[].map.call(t,function(A){return A.id}),o=0;o\]\.\/\(\)\*\\\n\t\b\v]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),t=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||t||!1}}}); +// @license-end \ No newline at end of file diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/gumshoe.polyfills.min.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/gumshoe.polyfills.min.js new file mode 100644 index 00000000..a594ec1b --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/gumshoe.polyfills.min.js @@ -0,0 +1,3 @@ +/*! gumshoejs v5.1.0 | (c) 2019 Chris Ferdinandi | MIT License | http://github.com/cferdinandi/gumshoe */ +/*! Modified to support container as "scroll root" which is necessary for this plugin to work | Fabian Zankl */ +Element.prototype.closest||(Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest=function(t){var e=this;if(!document.documentElement.contains(this))return null;do{if(e.matches(t))return e;e=e.parentElement}while(null!==e);return null}),function(){if("function"==typeof window.CustomEvent)return!1;function t(t,e){e=e||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent("CustomEvent");return n.initCustomEvent(t,e.bubbles,e.cancelable,e.detail),n}t.prototype=window.Event.prototype,window.CustomEvent=t}(),function(t,e){"function"==typeof define&&define.amd?define([],function(){return e(t)}):"object"==typeof exports?module.exports=e(t):t.Gumshoe=e(t)}("undefined"!=typeof global?global:"undefined"!=typeof window?window:this,function(t){"use strict";var e={container:t,navClass:"active",contentClass:"active",nested:!1,nestedClass:"active",offset:0,reflow:!1,events:!0},n=function(t,e,n){if(n.settings.events){var o=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n});e.dispatchEvent(o)}},o=function(t){var e=0;if(t.offsetParent)for(;t;)e+=t.offsetTop,t=t.offsetParent;return e>=0?e:0},c=function(t){t.sort(function(t,e){return o(t.content)=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},s=function(t,e){var n=t[t.length-1];if(function(t,e){return!(!i()||!r(t.content,e,!0))}(n,e))return n;for(var o=t.length-1;o>=0;o--)if(r(t[o].content,e))return t[o]},a=function(t,e){if(e.nested){var n=t.parentNode.closest("li");n&&(n.classList.remove(e.nestedClass),a(n,e))}},l=function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.remove(e.navClass),t.content.classList.remove(e.contentClass),a(o,e),n("gumshoeDeactivate",o,{link:t.nav,content:t.content,settings:e}))}},u=function(t,e){if(e.nested){var n=t.parentNode.closest("li");n&&(n.classList.add(e.nestedClass),u(n,e))}};return function(o,r){var i,a,f,d,m,v={};v.setup=function(){i=document.querySelectorAll(o),a=[],Array.prototype.forEach.call(i,function(t){var e=document.getElementById(decodeURIComponent(t.hash.substr(1)));e&&a.push({nav:t,content:e})}),c(a)},v.detect=function(){var t=s(a,m);t?f&&t.content===f.content||(l(f,m),function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.add(e.navClass),t.content.classList.add(e.contentClass),u(o,e),n("gumshoeActivate",o,{link:t.nav,content:t.content,settings:e}))}}(t,m),f=t):f&&(l(f,m),f=null)};var p=function(e){d&&t.cancelAnimationFrame(d),d=t.requestAnimationFrame(v.detect)},h=function(t){d&&m.container.cancelAnimationFrame(d),d=m.container.requestAnimationFrame(function(){c(),v.detect()})};v.destroy=function(){f&&l(f),m.container.removeEventListener("scroll",p,!1),m.reflow&&m.container.removeEventListener("resize",h,!1),a=null,i=null,f=null,d=null,m=null};return m=function(){var t={};return Array.prototype.forEach.call(arguments,function(e){for(var n in e){if(!e.hasOwnProperty(n))return;t[n]=e[n]}}),t}(e,r||{}),v.setup(),v.detect(),m.container.addEventListener("scroll",p,!1),m.reflow&&m.container.addEventListener("resize",h,!1),v}}); diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/plugin.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/plugin.js new file mode 100644 index 00000000..1f38ecc5 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/plugin.js @@ -0,0 +1,9 @@ +/*! + * gitbook-plugin-intopic-toc + * v1.1.1 + * https://github.com/zanfab/gitbook-plugin-intopic-toc#readme + * (c) 2020 Fabian Zankl + * MIT license + */ +"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var configuration,label;function getAnchorLevel(e){return parseInt(e.tagName.charAt(1),10)}function createNavList(e){var t=document.createElement("ul");return t.classList.add("nav"),t.classList.add("navbar-nav"),t.classList.add("level-".concat(e)),t}function createChildNavList(e,t){var n=createNavList(t);return e.append(n),n}function createNavItem(e,t){var n=document.createElement("a");n.classList.add("nav-link"),n.text=e,n.href=t;var a=document.createElement("li");return a.appendChild(n),a}function getStartingElementIndex(n){for(var e=function(t){var e=n.filter(function(e){return e.tagName.toLowerCase()==="h".concat(t)});if(1 {\n if ($bookSearchResults.hasClass('open')) {\n $('.intopic-toc').hide();\n }\n else {\n $('.intopic-toc').show();\n }\n });\n\n observer.observe($bookSearchResults[0], { attributes: true });\n });\n\n gitbook.events.bind('page.change', function () {\n anchors.removeAll();\n anchors.add(configuration.selector);\n\n const isVisible = (configuration.visible || gitbook.state.page.isTocVisible) && gitbook.state.page.isTocVisible !== false;\n\n const mode = configuration.mode;\n const maxDepth = Number(configuration.maxDepth);\n const isCollapsed = Boolean(configuration.isCollapsed);\n const isScrollspyActive = Boolean(configuration.isScrollspyActive);\n\n if (anchors.elements.length > 1 && isVisible) {\n const navigation = buildNavigation(anchors.elements, label, mode, maxDepth, isCollapsed);\n\n const section = document.body.querySelector('.page-wrapper');\n section.appendChild(navigation, section.firstChild);\n\n if (isScrollspyActive) {\n const container = $('.book-body .body-inner')[0];\n\n new Gumshoe('.intopic-toc a', {\n container: container,\n navClass: 'active',\n contentClass: 'active',\n nested: true,\n offset: container.offsetHeight / 2,\n reflow: true\n });\n }\n }\n });\n});\n\nfunction getAnchorLevel(element) {\n return parseInt(element.tagName.charAt(1), 10);\n}\n\nfunction createNavList(level) {\n const navList = document.createElement('ul');\n navList.classList.add('nav');\n navList.classList.add('navbar-nav');\n navList.classList.add(`level-${level}`);\n\n return navList;\n}\n\nfunction createChildNavList(parent, level) {\n const childList = createNavList(level);\n parent.append(childList);\n\n return childList;\n}\n\nfunction createNavItem(text, href) {\n const anchor = document.createElement('a');\n anchor.classList.add('nav-link');\n anchor.text = text;\n anchor.href = href;\n\n const item = document.createElement('li');\n item.appendChild(anchor);\n\n return item;\n}\n\n/**\n * Find the index of first heading level (`

      `, then `

      `, etc.) that has more than one element.\n * Defaults to 0 for the first element.\n *\n * @param {*} elements Headings identified via selector config property\n */\nfunction getStartingElementIndex(elements) {\n for (let i = 1; i <= 6; i++) {\n const headings = elements.filter(x => x.tagName.toLowerCase() === `h${i}`);\n\n if (headings.length > 1) {\n return elements.indexOf(headings[0]);\n }\n }\n\n return 0;\n}\n\nfunction buildNavigation(elements, header, mode, maxDepth, isCollapsed) {\n const indentItems = mode.toLowerCase() === 'nested';\n const navigation = document.createElement('nav');\n navigation.className = `intopic-toc ${mode}`;\n\n if (isCollapsed) {\n navigation.className += ' collapsed';\n }\n\n const heading = document.createElement('h3');\n heading.innerText = header;\n navigation.appendChild(heading);\n\n const containers = {};\n containers[0] = createChildNavList(navigation, 0);\n\n const startingElementIndex = getStartingElementIndex(elements);\n const startingLevel = getAnchorLevel(elements[startingElementIndex]);\n\n let previousItem;\n let previousLevel = -1;\n\n for (let i = startingElementIndex; i < elements.length; i++) {\n const currentLevel = getAnchorLevel(elements[i]) - startingLevel;\n\n if (currentLevel >= maxDepth) {\n continue;\n }\n\n if (previousLevel === -1) {\n previousLevel = currentLevel;\n }\n\n if (indentItems) {\n if (currentLevel < previousLevel) {\n for (let i = previousLevel; i > currentLevel; i--) {\n delete containers[i];\n }\n }\n\n if (!containers[currentLevel]) {\n containers[currentLevel] = createChildNavList(previousItem, currentLevel);\n }\n }\n\n const item = createNavItem(\n elements[i].textContent,\n elements[i].querySelector('.anchorjs-link').getAttribute('href'));\n\n containers[indentItems ? currentLevel : 0].appendChild(item);\n\n previousItem = item;\n previousLevel = currentLevel;\n }\n\n return navigation;\n}\n"],"names":["configuration","label","getAnchorLevel","element","parseInt","tagName","charAt","createNavList","level","navList","document","createElement","classList","add","createChildNavList","parent","childList","append","createNavItem","text","href","anchor","item","appendChild","getStartingElementIndex","elements","i","headings","filter","x","toLowerCase","length","indexOf","buildNavigation","header","mode","maxDepth","isCollapsed","indentItems","navigation","className","heading","innerText","containers","previousItem","startingElementIndex","startingLevel","previousLevel","currentLevel","textContent","querySelector","getAttribute","require","gitbook","$","anchors","options","placement","events","bind","e","config","_typeof","language","state","innerLanguage","Object","prototype","hasOwnProperty","call","$bookSearchResults","MutationObserver","hasClass","hide","show","observe","attributes","removeAll","selector","isVisible","visible","page","isTocVisible","Number","Boolean","isScrollspyActive","section","body","firstChild","container","Gumshoe","navClass","contentClass","nested","offset","offsetHeight","reflow"],"mappings":";;;;;;;8PACA,IAAIA,cACAC,MAsEJ,SAASC,eAAeC,UACfC,SAASD,EAAQE,QAAQC,OAAO,GAAI,IAG7C,SAASC,cAAcC,OACfC,EAAUC,SAASC,cAAc,aACvCF,EAAQG,UAAUC,IAAI,OACtBJ,EAAQG,UAAUC,IAAI,cACtBJ,EAAQG,UAAUC,oBAAaL,IAExBC,EAGT,SAASK,mBAAmBC,EAAQP,OAC5BQ,EAAYT,cAAcC,UAChCO,EAAOE,OAAOD,GAEPA,EAGT,SAASE,cAAcC,EAAMC,OACrBC,EAASX,SAASC,cAAc,KACtCU,EAAOT,UAAUC,IAAI,YACrBQ,EAAOF,KAAOA,EACdE,EAAOD,KAAOA,MAERE,EAAOZ,SAASC,cAAc,aACpCW,EAAKC,YAAYF,GAEVC,EAST,SAASE,wBAAwBC,sBACtBC,OACDC,EAAWF,EAASG,OAAO,SAAAC,UAAKA,EAAExB,QAAQyB,2BAAsBJ,QAEhD,EAAlBC,EAASI,gBACJN,EAASO,QAAQL,EAAS,MAJ5BD,EAAI,EAAGA,GAAK,EAAGA,IAAK,SAApBA,8CAQF,EAGT,SAASO,gBAAgBR,EAAUS,EAAQC,EAAMC,EAAUC,OACnDC,EAAqC,WAAvBH,EAAKL,cACnBS,EAAa7B,SAASC,cAAc,OAC1C4B,EAAWC,gCAA2BL,GAElCE,IACFE,EAAWC,WAAa,kBAGpBC,EAAU/B,SAASC,cAAc,MACvC8B,EAAQC,UAAYR,EACpBK,EAAWhB,YAAYkB,OAEjBE,EAAa,GACnBA,EAAW,GAAK7B,mBAAmByB,EAAY,WAK3CK,EAHEC,EAAuBrB,wBAAwBC,GAC/CqB,EAAgB5C,eAAeuB,EAASoB,IAG1CE,GAAiB,EAEZrB,EAAImB,EAAsBnB,EAAID,EAASM,OAAQL,IAAK,KACrDsB,EAAe9C,eAAeuB,EAASC,IAAMoB,OAE/BV,GAAhBY,QAImB,IAAnBD,IACFA,EAAgBC,GAGdV,EAAa,IACXU,EAAeD,MACZ,IAAIrB,EAAIqB,EAAmBC,EAAJtB,EAAkBA,WACrCiB,EAAWjB,GAIjBiB,EAAWK,KACdL,EAAWK,GAAgBlC,mBAAmB8B,EAAcI,QAI1D1B,EAAOJ,cACXO,EAASC,GAAGuB,YACZxB,EAASC,GAAGwB,cAAc,kBAAkBC,aAAa,SAE3DR,EAAWL,EAAcU,EAAe,GAAGzB,YAAYD,GAEvDsB,EAAetB,EACfyB,EAAgBC,UAGXT,EA7KTa,QAAQ,CAAC,UAAW,UAAW,SAAUC,EAASC,GAChDC,QAAQC,QAAU,CAChBC,UAAW,QAGbJ,EAAQK,OAAOC,KAAK,QAAS,SAAUC,EAAGC,MACxC7D,cAAgB6D,EAAO,eAIF,WAAjBC,QAHJ7D,MAAQD,cAAcC,OAGS,KACvB8D,EAAWV,EAAQW,MAAMC,cAG7BhE,MADE8D,GAAYG,OAAOC,UAAUC,eAAeC,KAAKpE,MAAO8D,GAClD9D,MAAM8D,GAEN,OAKNO,EAAqBhB,EAAE,wBAEZ,IAAIiB,iBAAiB,WAChCD,EAAmBE,SAAS,QAC9BlB,EAAE,gBAAgBmB,OAGlBnB,EAAE,gBAAgBoB,SAIbC,QAAQL,EAAmB,GAAI,CAAEM,YAAY,MAGxDvB,EAAQK,OAAOC,KAAK,cAAe,WACjCJ,QAAQsB,YACRtB,QAAQ1C,IAAIb,cAAc8E,cAEpBC,GAAa/E,cAAcgF,SAAW3B,EAAQW,MAAMiB,KAAKC,gBAAqD,IAApC7B,EAAQW,MAAMiB,KAAKC,aAE7F/C,EAAOnC,cAAcmC,KACrBC,EAAW+C,OAAOnF,cAAcoC,UAChCC,EAAc+C,QAAQpF,cAAcqC,aACpCgD,EAAoBD,QAAQpF,cAAcqF,sBAElB,EAA1B9B,QAAQ9B,SAASM,QAAcgD,EAAW,KACtCxC,EAAaN,gBAAgBsB,QAAQ9B,SAAUxB,MAAOkC,EAAMC,EAAUC,GAEtEiD,EAAU5E,SAAS6E,KAAKrC,cAAc,oBAC5CoC,EAAQ/D,YAAYgB,EAAY+C,EAAQE,YAEpCH,EAAmB,KACfI,EAAYnC,EAAE,0BAA0B,OAE1CoC,QAAQ,iBAAkB,CAC5BD,UAAWA,EACXE,SAAU,SACVC,aAAc,SACdC,QAAQ,EACRC,OAAQL,EAAUM,aAAe,EACjCC,QAAQ"} \ No newline at end of file diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/style.css b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/style.css new file mode 100644 index 00000000..f862bde1 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-intopic-toc/style.css @@ -0,0 +1,242 @@ +.page-wrapper { + display: flex; + justify-content: center; + align-items: flex-start; + flex-direction: row; +} + +.page-inner { + width: 60% !important; +} + +nav.intopic-toc { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + flex-direction: column; + width: 20%; + margin: 0 15px 5px 0; + padding-top: 40px; + position: -webkit-sticky; + position: sticky; + top: 0; + list-style: none; +} + +nav.intopic-toc h3 { + margin-top: 0; + font-size: 14px; + color: #9DAAB6; + margin: 0; + padding: 0px 15px; +} + +nav.intopic-toc h3:before { + display: inline-block; + width: 16px; + height: 16px; + content: " "; + background-image: url("data:image/svg+xml,%3Csvg preserveAspectRatio='xMidYMid meet' height='1em' width='1em' fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' stroke='%239DAAB6'%3E%3Cg%3E%3Cline x1='21' y1='10' x2='7' y2='10'%3E%3C/line%3E%3Cline x1='21' y1='6' x2='3' y2='6'%3E%3C/line%3E%3Cline x1='21' y1='14' x2='3' y2='14'%3E%3C/line%3E%3Cline x1='21' y1='18' x2='7' y2='18'%3E%3C/line%3E%3C/g%3E%3C/svg%3E"); + background-repeat: no-repeat; + margin-right: 10px; + vertical-align: bottom; +} + +nav.intopic-toc .navbar-nav { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +nav.intopic-toc .navbar-nav:before { + display: inline-block; + position: absolute; + content: " "; + top: 30px; + bottom: 0; + border-left: 1px solid #e6ecf1; + z-index: -1; +} + +nav.intopic-toc .nav > li > a { + display: block; + padding: 4px 15px; + line-height: 1.5; + color: #9DAAB6; + font-weight: bold; +} + +nav.intopic-toc.flat .nav > li > a { + font-size: 13px; +} + +nav.intopic-toc.nested .nav > li > a { + font-size: 14px; +} + +nav.intopic-toc .nav > li > a:hover, +nav.intopic-toc .nav > li > a:focus { + padding-left: 14px; + color: #6c767f; + text-decoration: none; + background-color: transparent; + border-left: 1px solid #6c767f; +} + +nav.intopic-toc .nav > li.active > a, +nav.intopic-toc .nav > li.active > a:hover, +nav.intopic-toc .nav > li.active > a:focus { + padding-left: 13px; + font-weight: bold; + color: #6c767f; + background-color: transparent; + border-left: 2px solid #6c767f; +} + +/* Each level */ +nav.intopic-toc .nav > li > ul { + padding-bottom: 5px; +} + +nav.intopic-toc.collapsed .nav > li > ul { + display: none; +} + +nav.intopic-toc .nav ul > li > a { + padding-top: 1px; + padding-bottom: 1px; + font-size: 13px; + font-weight: normal; +} + +nav.intopic-toc .nav > li.active > ul { + display: block; +} + +nav.intopic-toc .nav ul > li.active > a, +nav.intopic-toc .nav ul > li.active > a:hover, +nav.intopic-toc .nav ul > li.active > a:focus { + font-weight: bold; +} + +/* Level 1 */ +nav.intopic-toc .nav ul.level-1 > li > a { + padding-left: 25px; +} + +nav.intopic-toc .nav ul.level-1 > li > a:hover, +nav.intopic-toc .nav ul.level-1 > li > a:focus { + padding-left: 24px; +} + +nav.intopic-toc .nav ul.level-1 > li.active > a, +nav.intopic-toc .nav ul.level-1 > li.active > a:hover, +nav.intopic-toc .nav ul.level-1 > li.active > a:focus { + padding-left: 23px; +} + +/* Level 2 */ +nav.intopic-toc .nav ul.level-2 > li > a { + padding-left: 36px; +} + +nav.intopic-toc .nav ul.level-2 > li > a:hover, +nav.intopic-toc .nav ul.level-2 > li > a:focus { + padding-left: 35px; +} + +nav.intopic-toc .nav ul.level-2 > li.active > a, +nav.intopic-toc .nav ul.level-2 > li.active > a:hover, +nav.intopic-toc .nav ul.level-2 > li.active > a:focus { + padding-left: 34px; +} + +/* Level 3 */ +nav.intopic-toc .nav ul.level-3 > li > a { + padding-left: 47px; +} + +nav.intopic-toc .nav ul.level-3 > li > a:hover, +nav.intopic-toc .nav ul.level-3 > li > a:focus { + padding-left: 46px; +} + +nav.intopic-toc .nav ul.level-3 > li.active > a, +nav.intopic-toc .nav ul.level-3 > li.active > a:hover, +nav.intopic-toc .nav ul.level-3 > li.active > a:focus { + padding-left: 45px; +} + +/* Level 4 */ +nav.intopic-toc .nav ul.level-4 > li > a { + padding-left: 58px; +} + +nav.intopic-toc .nav ul.level-4 > li > a:hover, +nav.intopic-toc .nav ul.level-4 > li > a:focus { + padding-left: 57px; +} + +nav.intopic-toc .nav ul.level-4 > li.active > a, +nav.intopic-toc .nav ul.level-4 > li.active > a:hover, +nav.intopic-toc .nav ul.level-4 > li.active > a:focus { + padding-left: 56px; +} + +/* Level 5 */ +nav.intopic-toc .nav ul.level-5 > li > a { + padding-left: 69px; +} + +nav.intopic-toc .nav ul.level-5 > li > a:hover, +nav.intopic-toc .nav ul.level-5 > li > a:focus { + padding-left: 68px; +} + +nav.intopic-toc .nav ul.level-5 > li.active > a, +nav.intopic-toc .nav ul.level-5 > li.active > a:hover, +nav.intopic-toc .nav ul.level-5 > li.active > a:focus { + padding-left: 67px; +} + +@media (max-width: 1240px) { + .page-wrapper { + flex-direction: column-reverse; + } + + .page-inner { + width: unset !important; + } + + nav.intopic-toc { + width: 100%; + max-width: 800px; + padding-bottom: 0; + margin: 0 auto 5px auto; + padding-left: 20px; + padding-left: 15px; + } + + nav.intopic-toc .nav > li.active > a { + border-color: transparent; + color: #9DAAB6; + } + + nav.intopic-toc .nav > li.active > a:hover, + nav.intopic-toc .nav > li.active > a:focus { + border-left: 1px solid #6c767f; + } + + nav.intopic-toc.collapsed .nav > li > ul { + display: block; + } +} \ No newline at end of file diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-lunr/lunr.min.js b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-lunr/lunr.min.js new file mode 100644 index 00000000..6aa6bc7d --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook-plugin-lunr/lunr.min.js @@ -0,0 +1,7 @@ +/** + * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 0.5.12 + * Copyright (C) 2015 Oliver Nightingale + * MIT Licensed + * @license + */ +!function(){var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.5.12",t.utils={},t.utils.warn=function(t){return function(e){t.console&&console.warn&&console.warn(e)}}(this),t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var t=Array.prototype.slice.call(arguments),e=t.pop(),n=t;if("function"!=typeof e)throw new TypeError("last argument must be a function");n.forEach(function(t){this.hasHandler(t)||(this.events[t]=[]),this.events[t].push(e)},this)},t.EventEmitter.prototype.removeListener=function(t,e){if(this.hasHandler(t)){var n=this.events[t].indexOf(e);this.events[t].splice(n,1),this.events[t].length||delete this.events[t]}},t.EventEmitter.prototype.emit=function(t){if(this.hasHandler(t)){var e=Array.prototype.slice.call(arguments,1);this.events[t].forEach(function(t){t.apply(void 0,e)})}},t.EventEmitter.prototype.hasHandler=function(t){return t in this.events},t.tokenizer=function(t){return arguments.length&&null!=t&&void 0!=t?Array.isArray(t)?t.map(function(t){return t.toLowerCase()}):t.toString().trim().toLowerCase().split(/[\s\-]+/):[]},t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.registeredFunctions[e];if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._stack.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._stack.indexOf(e);if(-1==i)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._stack.indexOf(e);if(-1==i)throw new Error("Cannot find existingFn");this._stack.splice(i,0,n)},t.Pipeline.prototype.remove=function(t){var e=this._stack.indexOf(t);-1!=e&&this._stack.splice(e,1)},t.Pipeline.prototype.run=function(t){for(var e=[],n=t.length,i=this._stack.length,o=0;n>o;o++){for(var r=t[o],s=0;i>s&&(r=this._stack[s](r,o,t),void 0!==r);s++);void 0!==r&&e.push(r)}return e},t.Pipeline.prototype.reset=function(){this._stack=[]},t.Pipeline.prototype.toJSON=function(){return this._stack.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Vector=function(){this._magnitude=null,this.list=void 0,this.length=0},t.Vector.Node=function(t,e,n){this.idx=t,this.val=e,this.next=n},t.Vector.prototype.insert=function(e,n){this._magnitude=void 0;var i=this.list;if(!i)return this.list=new t.Vector.Node(e,n,i),this.length++;if(en.idx?n=n.next:(i+=e.val*n.val,e=e.next,n=n.next);return i},t.Vector.prototype.similarity=function(t){return this.dot(t)/(this.magnitude()*t.magnitude())},t.SortedSet=function(){this.length=0,this.elements=[]},t.SortedSet.load=function(t){var e=new this;return e.elements=t,e.length=t.length,e},t.SortedSet.prototype.add=function(){var t,e;for(t=0;t1;){if(r===t)return o;t>r&&(e=o),r>t&&(n=o),i=n-e,o=e+Math.floor(i/2),r=this.elements[o]}return r===t?o:-1},t.SortedSet.prototype.locationFor=function(t){for(var e=0,n=this.elements.length,i=n-e,o=e+Math.floor(i/2),r=this.elements[o];i>1;)t>r&&(e=o),r>t&&(n=o),i=n-e,o=e+Math.floor(i/2),r=this.elements[o];return r>t?o:t>r?o+1:void 0},t.SortedSet.prototype.intersect=function(e){for(var n=new t.SortedSet,i=0,o=0,r=this.length,s=e.length,a=this.elements,h=e.elements;;){if(i>r-1||o>s-1)break;a[i]!==h[o]?a[i]h[o]&&o++:(n.add(a[i]),i++,o++)}return n},t.SortedSet.prototype.clone=function(){var e=new t.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},t.SortedSet.prototype.union=function(t){var e,n,i;return this.length>=t.length?(e=this,n=t):(e=t,n=this),i=e.clone(),i.add.apply(i,n.toArray()),i},t.SortedSet.prototype.toJSON=function(){return this.toArray()},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.Store,this.tokenStore=new t.TokenStore,this.corpusTokens=new t.SortedSet,this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var t=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,t)},t.Index.prototype.off=function(t,e){return this.eventEmitter.removeListener(t,e)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;return n._fields=e.fields,n._ref=e.ref,n.documentStore=t.Store.load(e.documentStore),n.tokenStore=t.TokenStore.load(e.tokenStore),n.corpusTokens=t.SortedSet.load(e.corpusTokens),n.pipeline=t.Pipeline.load(e.pipeline),n},t.Index.prototype.field=function(t,e){var e=e||{},n={name:t,boost:e.boost||1};return this._fields.push(n),this},t.Index.prototype.ref=function(t){return this._ref=t,this},t.Index.prototype.add=function(e,n){var i={},o=new t.SortedSet,r=e[this._ref],n=void 0===n?!0:n;this._fields.forEach(function(n){var r=this.pipeline.run(t.tokenizer(e[n.name]));i[n.name]=r,t.SortedSet.prototype.add.apply(o,r)},this),this.documentStore.set(r,o),t.SortedSet.prototype.add.apply(this.corpusTokens,o.toArray());for(var s=0;s0&&(i=1+Math.log(this.documentStore.length/n)),this._idfCache[e]=i},t.Index.prototype.search=function(e){var n=this.pipeline.run(t.tokenizer(e)),i=new t.Vector,o=[],r=this._fields.reduce(function(t,e){return t+e.boost},0),s=n.some(function(t){return this.tokenStore.has(t)},this);if(!s)return[];n.forEach(function(e,n,s){var a=1/s.length*this._fields.length*r,h=this,l=this.tokenStore.expand(e).reduce(function(n,o){var r=h.corpusTokens.indexOf(o),s=h.idf(o),l=1,u=new t.SortedSet;if(o!==e){var c=Math.max(3,o.length-e.length);l=1/Math.log(c)}return r>-1&&i.insert(r,a*s*l),Object.keys(h.tokenStore.get(o)).forEach(function(t){u.add(t)}),n.union(u)},new t.SortedSet);o.push(l)},this);var a=o.reduce(function(t,e){return t.intersect(e)});return a.map(function(t){return{ref:t,score:i.similarity(this.documentVector(t))}},this).sort(function(t,e){return e.score-t.score})},t.Index.prototype.documentVector=function(e){for(var n=this.documentStore.get(e),i=n.length,o=new t.Vector,r=0;i>r;r++){var s=n.elements[r],a=this.tokenStore.get(s)[e].tf,h=this.idf(s);o.insert(this.corpusTokens.indexOf(s),a*h)}return o},t.Index.prototype.toJSON=function(){return{version:t.version,fields:this._fields,ref:this._ref,documentStore:this.documentStore.toJSON(),tokenStore:this.tokenStore.toJSON(),corpusTokens:this.corpusTokens.toJSON(),pipeline:this.pipeline.toJSON()}},t.Index.prototype.use=function(t){var e=Array.prototype.slice.call(arguments,1);e.unshift(this),t.apply(this,e)},t.Store=function(){this.store={},this.length=0},t.Store.load=function(e){var n=new this;return n.length=e.length,n.store=Object.keys(e.store).reduce(function(n,i){return n[i]=t.SortedSet.load(e.store[i]),n},{}),n},t.Store.prototype.set=function(t,e){this.has(t)||this.length++,this.store[t]=e},t.Store.prototype.get=function(t){return this.store[t]},t.Store.prototype.has=function(t){return t in this.store},t.Store.prototype.remove=function(t){this.has(t)&&(delete this.store[t],this.length--)},t.Store.prototype.toJSON=function(){return{store:this.store,length:this.length}},t.stemmer=function(){var t={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},e={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},n="[^aeiou]",i="[aeiouy]",o=n+"[^aeiouy]*",r=i+"[aeiou]*",s="^("+o+")?"+r+o,a="^("+o+")?"+r+o+"("+r+")?$",h="^("+o+")?"+r+o+r+o,l="^("+o+")?"+i,u=new RegExp(s),c=new RegExp(h),f=new RegExp(a),d=new RegExp(l),p=/^(.+?)(ss|i)es$/,m=/^(.+?)([^s])s$/,v=/^(.+?)eed$/,y=/^(.+?)(ed|ing)$/,g=/.$/,S=/(at|bl|iz)$/,w=new RegExp("([^aeiouylsz])\\1$"),x=new RegExp("^"+o+i+"[^aeiouwxy]$"),k=/^(.+?[^aeiou])y$/,b=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,E=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,_=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,F=/^(.+?)(s|t)(ion)$/,O=/^(.+?)e$/,P=/ll$/,N=new RegExp("^"+o+i+"[^aeiouwxy]$"),T=function(n){var i,o,r,s,a,h,l;if(n.length<3)return n;if(r=n.substr(0,1),"y"==r&&(n=r.toUpperCase()+n.substr(1)),s=p,a=m,s.test(n)?n=n.replace(s,"$1$2"):a.test(n)&&(n=n.replace(a,"$1$2")),s=v,a=y,s.test(n)){var T=s.exec(n);s=u,s.test(T[1])&&(s=g,n=n.replace(s,""))}else if(a.test(n)){var T=a.exec(n);i=T[1],a=d,a.test(i)&&(n=i,a=S,h=w,l=x,a.test(n)?n+="e":h.test(n)?(s=g,n=n.replace(s,"")):l.test(n)&&(n+="e"))}if(s=k,s.test(n)){var T=s.exec(n);i=T[1],n=i+"i"}if(s=b,s.test(n)){var T=s.exec(n);i=T[1],o=T[2],s=u,s.test(i)&&(n=i+t[o])}if(s=E,s.test(n)){var T=s.exec(n);i=T[1],o=T[2],s=u,s.test(i)&&(n=i+e[o])}if(s=_,a=F,s.test(n)){var T=s.exec(n);i=T[1],s=c,s.test(i)&&(n=i)}else if(a.test(n)){var T=a.exec(n);i=T[1]+T[2],a=c,a.test(i)&&(n=i)}if(s=O,s.test(n)){var T=s.exec(n);i=T[1],s=c,a=f,h=N,(s.test(i)||a.test(i)&&!h.test(i))&&(n=i)}return s=P,a=c,s.test(n)&&a.test(n)&&(s=g,n=n.replace(s,"")),"y"==r&&(n=r.toLowerCase()+n.substr(1)),n};return T}(),t.Pipeline.registerFunction(t.stemmer,"stemmer"),t.stopWordFilter=function(e){return e&&t.stopWordFilter.stopWords[e]!==e?e:void 0},t.stopWordFilter.stopWords={a:"a",able:"able",about:"about",across:"across",after:"after",all:"all",almost:"almost",also:"also",am:"am",among:"among",an:"an",and:"and",any:"any",are:"are",as:"as",at:"at",be:"be",because:"because",been:"been",but:"but",by:"by",can:"can",cannot:"cannot",could:"could",dear:"dear",did:"did","do":"do",does:"does",either:"either","else":"else",ever:"ever",every:"every","for":"for",from:"from",get:"get",got:"got",had:"had",has:"has",have:"have",he:"he",her:"her",hers:"hers",him:"him",his:"his",how:"how",however:"however",i:"i","if":"if","in":"in",into:"into",is:"is",it:"it",its:"its",just:"just",least:"least",let:"let",like:"like",likely:"likely",may:"may",me:"me",might:"might",most:"most",must:"must",my:"my",neither:"neither",no:"no",nor:"nor",not:"not",of:"of",off:"off",often:"often",on:"on",only:"only",or:"or",other:"other",our:"our",own:"own",rather:"rather",said:"said",say:"say",says:"says",she:"she",should:"should",since:"since",so:"so",some:"some",than:"than",that:"that",the:"the",their:"their",them:"them",then:"then",there:"there",these:"these",they:"they","this":"this",tis:"tis",to:"to",too:"too",twas:"twas",us:"us",wants:"wants",was:"was",we:"we",were:"were",what:"what",when:"when",where:"where",which:"which","while":"while",who:"who",whom:"whom",why:"why",will:"will","with":"with",would:"would",yet:"yet",you:"you",your:"your"},t.Pipeline.registerFunction(t.stopWordFilter,"stopWordFilter"),t.trimmer=function(t){var e=t.replace(/^\W+/,"").replace(/\W+$/,"");return""===e?void 0:e},t.Pipeline.registerFunction(t.trimmer,"trimmer"),t.TokenStore=function(){this.root={docs:{}},this.length=0},t.TokenStore.load=function(t){var e=new this;return e.root=t.root,e.length=t.length,e},t.TokenStore.prototype.add=function(t,e,n){var n=n||this.root,i=t[0],o=t.slice(1);return i in n||(n[i]={docs:{}}),0===o.length?(n[i].docs[e.ref]=e,void(this.length+=1)):this.add(o,e,n[i])},t.TokenStore.prototype.has=function(t){if(!t)return!1;for(var e=this.root,n=0;no;o++){for(var r=t[o],s=0;i>s&&(r=this._stack[s](r,o,t),void 0!==r);s++);void 0!==r&&e.push(r)}return e},t.Pipeline.prototype.reset=function(){this._stack=[]},t.Pipeline.prototype.toJSON=function(){return this._stack.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Vector=function(){this._magnitude=null,this.list=void 0,this.length=0},t.Vector.Node=function(t,e,n){this.idx=t,this.val=e,this.next=n},t.Vector.prototype.insert=function(e,n){this._magnitude=void 0;var i=this.list;if(!i)return this.list=new t.Vector.Node(e,n,i),this.length++;if(en.idx?n=n.next:(i+=e.val*n.val,e=e.next,n=n.next);return i},t.Vector.prototype.similarity=function(t){return this.dot(t)/(this.magnitude()*t.magnitude())},t.SortedSet=function(){this.length=0,this.elements=[]},t.SortedSet.load=function(t){var e=new this;return e.elements=t,e.length=t.length,e},t.SortedSet.prototype.add=function(){var t,e;for(t=0;t1;){if(r===t)return o;t>r&&(e=o),r>t&&(n=o),i=n-e,o=e+Math.floor(i/2),r=this.elements[o]}return r===t?o:-1},t.SortedSet.prototype.locationFor=function(t){for(var e=0,n=this.elements.length,i=n-e,o=e+Math.floor(i/2),r=this.elements[o];i>1;)t>r&&(e=o),r>t&&(n=o),i=n-e,o=e+Math.floor(i/2),r=this.elements[o];return r>t?o:t>r?o+1:void 0},t.SortedSet.prototype.intersect=function(e){for(var n=new t.SortedSet,i=0,o=0,r=this.length,s=e.length,a=this.elements,h=e.elements;;){if(i>r-1||o>s-1)break;a[i]!==h[o]?a[i]h[o]&&o++:(n.add(a[i]),i++,o++)}return n},t.SortedSet.prototype.clone=function(){var e=new t.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},t.SortedSet.prototype.union=function(t){var e,n,i;return this.length>=t.length?(e=this,n=t):(e=t,n=this),i=e.clone(),i.add.apply(i,n.toArray()),i},t.SortedSet.prototype.toJSON=function(){return this.toArray()},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.Store,this.tokenStore=new t.TokenStore,this.corpusTokens=new t.SortedSet,this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var t=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,t)},t.Index.prototype.off=function(t,e){return this.eventEmitter.removeListener(t,e)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;return n._fields=e.fields,n._ref=e.ref,n.documentStore=t.Store.load(e.documentStore),n.tokenStore=t.TokenStore.load(e.tokenStore),n.corpusTokens=t.SortedSet.load(e.corpusTokens),n.pipeline=t.Pipeline.load(e.pipeline),n},t.Index.prototype.field=function(t,e){var e=e||{},n={name:t,boost:e.boost||1};return this._fields.push(n),this},t.Index.prototype.ref=function(t){return this._ref=t,this},t.Index.prototype.add=function(e,n){var i={},o=new t.SortedSet,r=e[this._ref],n=void 0===n?!0:n;this._fields.forEach(function(n){var r=this.pipeline.run(t.tokenizer(e[n.name]));i[n.name]=r,t.SortedSet.prototype.add.apply(o,r)},this),this.documentStore.set(r,o),t.SortedSet.prototype.add.apply(this.corpusTokens,o.toArray());for(var s=0;s0&&(i=1+Math.log(this.documentStore.length/n)),this._idfCache[e]=i},t.Index.prototype.search=function(e){var n=this.pipeline.run(t.tokenizer(e)),i=new t.Vector,o=[],r=this._fields.reduce(function(t,e){return t+e.boost},0),s=n.some(function(t){return this.tokenStore.has(t)},this);if(!s)return[];n.forEach(function(e,n,s){var a=1/s.length*this._fields.length*r,h=this,l=this.tokenStore.expand(e).reduce(function(n,o){var r=h.corpusTokens.indexOf(o),s=h.idf(o),l=1,u=new t.SortedSet;if(o!==e){var c=Math.max(3,o.length-e.length);l=1/Math.log(c)}return r>-1&&i.insert(r,a*s*l),Object.keys(h.tokenStore.get(o)).forEach(function(t){u.add(t)}),n.union(u)},new t.SortedSet);o.push(l)},this);var a=o.reduce(function(t,e){return t.intersect(e)});return a.map(function(t){return{ref:t,score:i.similarity(this.documentVector(t))}},this).sort(function(t,e){return e.score-t.score})},t.Index.prototype.documentVector=function(e){for(var n=this.documentStore.get(e),i=n.length,o=new t.Vector,r=0;i>r;r++){var s=n.elements[r],a=this.tokenStore.get(s)[e].tf,h=this.idf(s);o.insert(this.corpusTokens.indexOf(s),a*h)}return o},t.Index.prototype.toJSON=function(){return{version:t.version,fields:this._fields,ref:this._ref,documentStore:this.documentStore.toJSON(),tokenStore:this.tokenStore.toJSON(),corpusTokens:this.corpusTokens.toJSON(),pipeline:this.pipeline.toJSON()}},t.Index.prototype.use=function(t){var e=Array.prototype.slice.call(arguments,1);e.unshift(this),t.apply(this,e)},t.Store=function(){this.store={},this.length=0},t.Store.load=function(e){var n=new this;return n.length=e.length,n.store=Object.keys(e.store).reduce(function(n,i){return n[i]=t.SortedSet.load(e.store[i]),n},{}),n},t.Store.prototype.set=function(t,e){this.has(t)||this.length++,this.store[t]=e},t.Store.prototype.get=function(t){return this.store[t]},t.Store.prototype.has=function(t){return t in this.store},t.Store.prototype.remove=function(t){this.has(t)&&(delete this.store[t],this.length--)},t.Store.prototype.toJSON=function(){return{store:this.store,length:this.length}},t.stemmer=function(){var t={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},e={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},n="[^aeiou]",i="[aeiouy]",o=n+"[^aeiouy]*",r=i+"[aeiou]*",s="^("+o+")?"+r+o,a="^("+o+")?"+r+o+"("+r+")?$",h="^("+o+")?"+r+o+r+o,l="^("+o+")?"+i,u=new RegExp(s),c=new RegExp(h),f=new RegExp(a),d=new RegExp(l),p=/^(.+?)(ss|i)es$/,m=/^(.+?)([^s])s$/,v=/^(.+?)eed$/,y=/^(.+?)(ed|ing)$/,g=/.$/,S=/(at|bl|iz)$/,w=new RegExp("([^aeiouylsz])\\1$"),x=new RegExp("^"+o+i+"[^aeiouwxy]$"),k=/^(.+?[^aeiou])y$/,b=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,E=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,_=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,F=/^(.+?)(s|t)(ion)$/,O=/^(.+?)e$/,P=/ll$/,N=new RegExp("^"+o+i+"[^aeiouwxy]$"),T=function(n){var i,o,r,s,a,h,l;if(n.length<3)return n;if(r=n.substr(0,1),"y"==r&&(n=r.toUpperCase()+n.substr(1)),s=p,a=m,s.test(n)?n=n.replace(s,"$1$2"):a.test(n)&&(n=n.replace(a,"$1$2")),s=v,a=y,s.test(n)){var T=s.exec(n);s=u,s.test(T[1])&&(s=g,n=n.replace(s,""))}else if(a.test(n)){var T=a.exec(n);i=T[1],a=d,a.test(i)&&(n=i,a=S,h=w,l=x,a.test(n)?n+="e":h.test(n)?(s=g,n=n.replace(s,"")):l.test(n)&&(n+="e"))}if(s=k,s.test(n)){var T=s.exec(n);i=T[1],n=i+"i"}if(s=b,s.test(n)){var T=s.exec(n);i=T[1],o=T[2],s=u,s.test(i)&&(n=i+t[o])}if(s=E,s.test(n)){var T=s.exec(n);i=T[1],o=T[2],s=u,s.test(i)&&(n=i+e[o])}if(s=_,a=F,s.test(n)){var T=s.exec(n);i=T[1],s=c,s.test(i)&&(n=i)}else if(a.test(n)){var T=a.exec(n);i=T[1]+T[2],a=c,a.test(i)&&(n=i)}if(s=O,s.test(n)){var T=s.exec(n);i=T[1],s=c,a=f,h=N,(s.test(i)||a.test(i)&&!h.test(i))&&(n=i)}return s=P,a=c,s.test(n)&&a.test(n)&&(s=g,n=n.replace(s,"")),"y"==r&&(n=r.toLowerCase()+n.substr(1)),n};return T}(),t.Pipeline.registerFunction(t.stemmer,"stemmer"),t.stopWordFilter=function(e){return e&&t.stopWordFilter.stopWords[e]!==e?e:void 0},t.stopWordFilter.stopWords={a:"a",able:"able",about:"about",across:"across",after:"after",all:"all",almost:"almost",also:"also",am:"am",among:"among",an:"an",and:"and",any:"any",are:"are",as:"as",at:"at",be:"be",because:"because",been:"been",but:"but",by:"by",can:"can",cannot:"cannot",could:"could",dear:"dear",did:"did","do":"do",does:"does",either:"either","else":"else",ever:"ever",every:"every","for":"for",from:"from",get:"get",got:"got",had:"had",has:"has",have:"have",he:"he",her:"her",hers:"hers",him:"him",his:"his",how:"how",however:"however",i:"i","if":"if","in":"in",into:"into",is:"is",it:"it",its:"its",just:"just",least:"least",let:"let",like:"like",likely:"likely",may:"may",me:"me",might:"might",most:"most",must:"must",my:"my",neither:"neither",no:"no",nor:"nor",not:"not",of:"of",off:"off",often:"often",on:"on",only:"only",or:"or",other:"other",our:"our",own:"own",rather:"rather",said:"said",say:"say",says:"says",she:"she",should:"should",since:"since",so:"so",some:"some",than:"than",that:"that",the:"the",their:"their",them:"them",then:"then",there:"there",these:"these",they:"they","this":"this",tis:"tis",to:"to",too:"too",twas:"twas",us:"us",wants:"wants",was:"was",we:"we",were:"were",what:"what",when:"when",where:"where",which:"which","while":"while",who:"who",whom:"whom",why:"why",will:"will","with":"with",would:"would",yet:"yet",you:"you",your:"your"},t.Pipeline.registerFunction(t.stopWordFilter,"stopWordFilter"),t.trimmer=function(t){var e=t.replace(/^\W+/,"").replace(/\W+$/,"");return""===e?void 0:e},t.Pipeline.registerFunction(t.trimmer,"trimmer"),t.TokenStore=function(){this.root={docs:{}},this.length=0},t.TokenStore.load=function(t){var e=new this;return e.root=t.root,e.length=t.length,e},t.TokenStore.prototype.add=function(t,e,n){var n=n||this.root,i=t[0],o=t.slice(1);return i in n||(n[i]={docs:{}}),0===o.length?(n[i].docs[e.ref]=e,void(this.length+=1)):this.add(o,e,n[i])},t.TokenStore.prototype.has=function(t){if(!t)return!1;for(var e=this.root,n=0;n element for each result + res.results.forEach(function(res) { + var $li = $('
    • ', { + 'class': 'search-results-item' + }); + + var $title = $('

      '); + + var $link = $('', { + 'href': gitbook.state.basePath + '/' + res.url, + 'text': res.title + }); + + var content = res.body.trim(); + if (content.length > MAX_DESCRIPTION_SIZE) { + content = content.slice(0, MAX_DESCRIPTION_SIZE).trim()+'...'; + } + var $content = $('

      ').html(content); + + $link.appendTo($title); + $title.appendTo($li); + $content.appendTo($li); + $li.appendTo($searchList); + }); + } + + function launchSearch(q) { + // Add class for loading + $body.addClass('with-search'); + $body.addClass('search-loading'); + + // Launch search query + throttle(gitbook.search.query(q, 0, MAX_RESULTS) + .then(function(results) { + displayResults(results); + }) + .always(function() { + $body.removeClass('search-loading'); + }), 1000); + } + + function closeSearch() { + $body.removeClass('with-search'); + $bookSearchResults.removeClass('open'); + } + + function launchSearchFromQueryString() { + var q = getParameterByName('q'); + if (q && q.length > 0) { + // Update search input + $searchInput.val(q); + + // Launch search + launchSearch(q); + } + } + + function bindSearch() { + // Bind DOM + $searchInput = $('#book-search-input input'); + $bookSearchResults = $('#book-search-results'); + $searchList = $bookSearchResults.find('.search-results-list'); + $searchTitle = $bookSearchResults.find('.search-results-title'); + $searchResultsCount = $searchTitle.find('.search-results-count'); + $searchQuery = $searchTitle.find('.search-query'); + + // Launch query based on input content + function handleUpdate() { + var q = $searchInput.val(); + + if (q.length == 0) { + closeSearch(); + } + else { + launchSearch(q); + } + } + + // Detect true content change in search input + // Workaround for IE < 9 + var propertyChangeUnbound = false; + $searchInput.on('propertychange', function(e) { + if (e.originalEvent.propertyName == 'value') { + handleUpdate(); + } + }); + + // HTML5 (IE9 & others) + $searchInput.on('input', function(e) { + // Unbind propertychange event for IE9+ + if (!propertyChangeUnbound) { + $(this).unbind('propertychange'); + propertyChangeUnbound = true; + } + + handleUpdate(); + }); + + // Push to history on blur + $searchInput.on('blur', function(e) { + // Update history state + if (usePushState) { + var uri = updateQueryString('q', $(this).val()); + history.pushState({ path: uri }, null, uri); + } + }); + } + + gitbook.events.on('page.change', function() { + bindSearch(); + closeSearch(); + + // Launch search based on query parameter + if (gitbook.search.isInitialized()) { + launchSearchFromQueryString(); + } + }); + + gitbook.events.on('search.ready', function() { + bindSearch(); + + // Launch search from query param at start + launchSearchFromQueryString(); + }); + + function getParameterByName(name) { + var url = window.location.href; + name = name.replace(/[\[\]]/g, '\\$&'); + var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)', 'i'), + results = regex.exec(url); + if (!results) return null; + if (!results[2]) return ''; + return decodeURIComponent(results[2].replace(/\+/g, ' ')); + } + + function updateQueryString(key, value) { + value = encodeURIComponent(value); + + var url = window.location.href; + var re = new RegExp('([?&])' + key + '=.*?(&|#|$)(.*)', 'gi'), + hash; + + if (re.test(url)) { + if (typeof value !== 'undefined' && value !== null) + return url.replace(re, '$1' + key + '=' + value + '$2$3'); + else { + hash = url.split('#'); + url = hash[0].replace(re, '$1$3').replace(/(&|\?)$/, ''); + if (typeof hash[1] !== 'undefined' && hash[1] !== null) + url += '#' + hash[1]; + return url; + } + } + else { + if (typeof value !== 'undefined' && value !== null) { + var separator = url.indexOf('?') !== -1 ? '&' : '?'; + hash = url.split('#'); + url = hash[0] + separator + key + '=' + value; + if (typeof hash[1] !== 'undefined' && hash[1] !== null) + url += '#' + hash[1]; + return url; + } + else + return url; + } + } +}); diff --git a/docs/manuals/ADMIN/html/gitbook/gitbook.js b/docs/manuals/ADMIN/html/gitbook/gitbook.js new file mode 100644 index 00000000..74e2b3b3 --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/gitbook.js @@ -0,0 +1 @@ +!function r(o,i,a){function s(t,e){if(!i[t]){if(!o[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(u)return u(t,!0);throw(e=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",e}n=i[t]={exports:{}},o[t][0].call(n.exports,function(e){return s(o[t][1][e]||e)},n,n.exports,r,o,i,a)}return i[t].exports}for(var u="function"==typeof require&&require,e=0;e= 0x80 (not a basic code point)","invalid-input":"Invalid input"},p=m-1,b=Math.floor,x=String.fromCharCode;function w(e){throw new RangeError(f[e])}function h(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function d(e,t){var n=e.split("@"),r="",n=(1>>10&1023|55296),e=56320|1023&e),t+=x(e)}).join("")}function A(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function j(e,t,n){var r=0;for(e=n?b(e/s):e>>1,e+=b(e/t);p*v>>1b((g-c)/i))&&w("overflow"),c+=s*i,!(s<(s=a<=p?1:p+v<=a?v:a-p));a+=m)i>b(g/(s=m-s))&&w("overflow"),i*=s;p=j(c-o,t=u.length+1,0==o),b(c/t)>g-f&&w("overflow"),f+=b(c/t),c%=t,u.splice(c++,0,f)}return y(u)}function C(e){for(var t,n,r,o,i,a,s,u,l,c,f=[],p=(e=S(e)).length,h=128,d=72,y=t=0;yb((g-t)/(u=n+1))&&w("overflow"),t+=(o-h)*u,h=o,y=0;yg&&w("overflow"),s==h){for(i=t,a=m;!(i<(l=a<=d?1:d+v<=a?v:a-d));a+=m)f.push(x(A(l+(c=i-l)%(l=m-l),0))),i=b(c/l);f.push(x(A(i,0))),d=j(t,u,n==r),t=0,++n}++t,++h}return f.join("")}if(o={version:"1.4.1",ucs2:{decode:S,encode:y},decode:T,encode:C,toASCII:function(e){return d(e,function(e){return l.test(e)?"xn--"+C(e):e})},toUnicode:function(e){return d(e,function(e){return u.test(e)?T(e.slice(4).toLowerCase()):e})}},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return o});else if(t&&n)if(k.exports==t)n.exports=o;else for(i in o)o.hasOwnProperty(i)&&(t[i]=o[i]);else e.punycode=o}.call(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],3:[function(e,t,n){"use strict";var r=e("get-intrinsic"),o=e("./"),i=o(r("String.prototype.indexOf"));t.exports=function(e,t){t=r(e,!!t);return"function"==typeof t&&-1=n.length?(u=!!(f=d(i,l)))&&"get"in f&&!("originalValue"in f.get)?f.get:i[l]:(u=b(i,l),i[l]),u&&!a&&(g[c]=i)}}return i}},{"function-bind":6,has:11,"has-proto":8,"has-symbols":9}],8:[function(e,t,n){"use strict";var r={foo:{}},o=Object;t.exports=function(){return{__proto__:r}.foo===r.foo&&!({__proto__:null}instanceof o)}},{}],9:[function(e,t,n){"use strict";var r="undefined"!=typeof Symbol&&Symbol,o=e("./shams");t.exports=function(){return"function"==typeof r&&("function"==typeof Symbol&&("symbol"==typeof r("foo")&&("symbol"==typeof Symbol("bar")&&o())))}},{"./shams":10}],10:[function(e,t,n){"use strict";t.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"!=typeof Symbol.iterator){var e={},t=Symbol("test"),n=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;n=Object.getOwnPropertySymbols(e);if(1!==n.length||n[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){n=Object.getOwnPropertyDescriptor(e,t);if(42!==n.value||!0!==n.enumerable)return!1}}return!0}},{}],11:[function(e,t,n){"use strict";e=e("function-bind");t.exports=e.call(Function.call,Object.prototype.hasOwnProperty)},{"function-bind":6}],12:[function(e,n,t){!function(e,t){"use strict";"object"==typeof n&&"object"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(e.document)return t(e);throw new Error("jQuery requires a window with a document")}:t(e)}("undefined"!=typeof window?window:this,function(w,I){"use strict";function v(e){return"function"==typeof e&&"number"!=typeof e.nodeType}function y(e){return null!=e&&e===e.window}var t=[],F=Object.getPrototypeOf,s=t.slice,M=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},H=t.push,_=t.indexOf,B={},W=B.toString,$=B.hasOwnProperty,U=$.toString,z=U.call(Object),g={},S=w.document,G={type:!0,src:!0,nonce:!0,noModule:!0};function V(e,t,n){var r,o,i=(n=n||S).createElement("script");if(i.text=e,t)for(r in G)(o=t[r]||t.getAttribute&&t.getAttribute(r))&&i.setAttribute(r,o);n.head.appendChild(i).parentNode.removeChild(i)}function d(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?B[W.call(e)]||"object":typeof e}var A=function(e,t){return new A.fn.init(e,t)};function X(e){var t=!!e&&"length"in e&&e.length,n=d(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0>10|55296,1023&e|56320))}function F(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e}function M(){S()}var e,p,x,i,H,h,_,B,w,u,l,S,A,n,j,d,r,o,y,T="sizzle"+ +new Date,c=I.document,C=0,W=0,$=D(),U=D(),z=D(),g=D(),G=function(e,t){return e===t&&(l=!0),0},V={}.hasOwnProperty,t=[],X=t.pop,Q=t.push,E=t.push,J=t.slice,v=function(e,t){for(var n=0,r=e.length;n+~]|"+a+")"+a+"*"),re=new RegExp(a+"|>"),oe=new RegExp(Z),ie=new RegExp("^"+s+"$"),b={ID:new RegExp("^#("+s+")"),CLASS:new RegExp("^\\.("+s+")"),TAG:new RegExp("^("+s+"|[*])"),ATTR:new RegExp("^"+K),PSEUDO:new RegExp("^"+Z),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+a+"*(even|odd|(([+-]|)(\\d*)n|)"+a+"*(?:([+-]|)"+a+"*(\\d+)|))"+a+"*\\)|)","i"),bool:new RegExp("^(?:"+Y+")$","i"),needsContext:new RegExp("^"+a+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+a+"*((?:-\\d)?\\d*)"+a+"*\\)|)(?=[^-]|$)","i")},ae=/HTML$/i,se=/^(?:input|select|textarea|button)$/i,ue=/^h\d$/i,k=/^[^{]+\{\s*\[native \w/,le=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ce=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+a+"?|\\\\([^\\r\\n\\f])","g"),fe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,pe=ve(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{E.apply(t=J.call(c.childNodes),c.childNodes),t[c.childNodes.length].nodeType}catch(e){E={apply:t.length?function(e,t){Q.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function N(t,e,n,r){var o,i,a,s,u,l,c=e&&e.ownerDocument,f=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==f&&9!==f&&11!==f)return n;if(!r&&(S(e),e=e||A,j)){if(11!==f&&(s=le.exec(t)))if(o=s[1]){if(9===f){if(!(l=e.getElementById(o)))return n;if(l.id===o)return n.push(l),n}else if(c&&(l=c.getElementById(o))&&y(e,l)&&l.id===o)return n.push(l),n}else{if(s[2])return E.apply(n,e.getElementsByTagName(t)),n;if((o=s[3])&&p.getElementsByClassName&&e.getElementsByClassName)return E.apply(n,e.getElementsByClassName(o)),n}if(p.qsa&&!g[t+" "]&&(!d||!d.test(t))&&(1!==f||"object"!==e.nodeName.toLowerCase())){if(l=t,c=e,1===f&&(re.test(t)||ne.test(t))){for((c=ce.test(t)&&ge(e.parentNode)||e)===e&&p.scope||((a=e.getAttribute("id"))?a=a.replace(fe,F):e.setAttribute("id",a=T)),i=(u=h(t)).length;i--;)u[i]=(a?"#"+a:":scope")+" "+R(u[i]);l=u.join(",")}try{return E.apply(n,c.querySelectorAll(l)),n}catch(e){g(t,!0)}finally{a===T&&e.removeAttribute("id")}}}return B(t.replace(m,"$1"),e,n,r)}function D(){var n=[];function r(e,t){return n.push(e+" ")>x.cacheLength&&delete r[n.shift()],r[e+" "]=t}return r}function P(e){return e[T]=!0,e}function q(e){var t=A.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t)}}function he(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function de(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function ye(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&pe(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function L(a){return P(function(i){return i=+i,P(function(e,t){for(var n,r=a([],e.length,i),o=r.length;o--;)e[n=r[o]]&&(e[n]=!(t[n]=e[n]))})})}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in p=N.support={},H=N.isXML=function(e){var t=e.namespaceURI,e=(e.ownerDocument||e).documentElement;return!ae.test(t||e&&e.nodeName||"HTML")},S=N.setDocument=function(e){var e=e?e.ownerDocument||e:c;return e!=A&&9===e.nodeType&&e.documentElement&&(n=(A=e).documentElement,j=!H(A),c!=A&&(e=A.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",M,!1):e.attachEvent&&e.attachEvent("onunload",M)),p.scope=q(function(e){return n.appendChild(e).appendChild(A.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),p.attributes=q(function(e){return e.className="i",!e.getAttribute("className")}),p.getElementsByTagName=q(function(e){return e.appendChild(A.createComment("")),!e.getElementsByTagName("*").length}),p.getElementsByClassName=k.test(A.getElementsByClassName),p.getById=q(function(e){return n.appendChild(e).id=T,!A.getElementsByName||!A.getElementsByName(T).length}),p.getById?(x.filter.ID=function(e){var t=e.replace(O,f);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&j)return(t=t.getElementById(e))?[t]:[]}):(x.filter.ID=function(e){var t=e.replace(O,f);return function(e){e=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return e&&e.value===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&j){var n,r,o,i=t.getElementById(e);if(i){if((n=i.getAttributeNode("id"))&&n.value===e)return[i];for(o=t.getElementsByName(e),r=0;i=o[r++];)if((n=i.getAttributeNode("id"))&&n.value===e)return[i]}return[]}}),x.find.TAG=p.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):p.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"!==e)return i;for(;n=i[o++];)1===n.nodeType&&r.push(n);return r},x.find.CLASS=p.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&j)return t.getElementsByClassName(e)},r=[],d=[],(p.qsa=k.test(A.querySelectorAll))&&(q(function(e){var t;n.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&d.push("[*^$]="+a+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||d.push("\\["+a+"*(?:value|"+Y+")"),e.querySelectorAll("[id~="+T+"-]").length||d.push("~="),(t=A.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+a+"*name"+a+"*="+a+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||d.push(":checked"),e.querySelectorAll("a#"+T+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll("\\\f"),d.push("[\\r\\n\\f]")}),q(function(e){e.innerHTML="";var t=A.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&d.push("name"+a+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&d.push(":enabled",":disabled"),n.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),d.push(",.*:")})),(p.matchesSelector=k.test(o=n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.oMatchesSelector||n.msMatchesSelector))&&q(function(e){p.disconnectedMatch=o.call(e,"*"),o.call(e,"[s!='']:x"),r.push("!=",Z)}),d=d.length&&new RegExp(d.join("|")),r=r.length&&new RegExp(r.join("|")),e=k.test(n.compareDocumentPosition),y=e||k.test(n.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,t=t&&t.parentNode;return e===t||!(!t||1!==t.nodeType||!(n.contains?n.contains(t):e.compareDocumentPosition&&16&e.compareDocumentPosition(t)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},G=e?function(e,t){var n;return e===t?(l=!0,0):(n=!e.compareDocumentPosition-!t.compareDocumentPosition)||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!p.sortDetached&&t.compareDocumentPosition(e)===n?e==A||e.ownerDocument==c&&y(c,e)?-1:t==A||t.ownerDocument==c&&y(c,t)?1:u?v(u,e)-v(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,a=[e],s=[t];if(!o||!i)return e==A?-1:t==A?1:o?-1:i?1:u?v(u,e)-v(u,t):0;if(o===i)return de(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?de(a[r],s[r]):a[r]==c?-1:s[r]==c?1:0}),A},N.matches=function(e,t){return N(e,null,null,t)},N.matchesSelector=function(e,t){if(S(e),p.matchesSelector&&j&&!g[t+" "]&&(!r||!r.test(t))&&(!d||!d.test(t)))try{var n=o.call(e,t);if(n||p.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){g(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,f),e[3]=(e[3]||e[4]||e[5]||"").replace(O,f),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||N.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&N.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return b.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&oe.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,f).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+a+")"+e+"("+a+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(t,n,r){return function(e){e=N.attr(e,t);return null==e?"!="===n:!n||(e+="","="===n?e===r:"!="===n?e!==r:"^="===n?r&&0===e.indexOf(r):"*="===n?r&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function K(e,n,r){return v(n)?A.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?A.grep(e,function(e){return e===n!==r}):"string"!=typeof n?A.grep(e,function(e){return-1<_.call(n,e)!==r}):A.filter(n,e,r)}A.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?A.find.matchesSelector(r,e)?[r]:[]:A.find.matches(e,A.grep(t,function(e){return 1===e.nodeType}))},A.fn.extend({find:function(e){var t,n,r=this.length,o=this;if("string"!=typeof e)return this.pushStack(A(e).filter(function(){for(t=0;t)[^>]*|#([\w-]+))$/,te=((A.fn.init=function(e,t,n){if(e){if(n=n||Z,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(A):A.makeArray(e,this);if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:ee.exec(e))||!r[1]&&t)return(!t||t.jquery?t||n:this.constructor(t)).find(e);if(r[1]){if(t=t instanceof A?t[0]:t,A.merge(this,A.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),Y.test(r[1])&&A.isPlainObject(t))for(var r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r])}else(n=S.getElementById(r[2]))&&(this[0]=n,this.length=1)}return this}).prototype=A.fn,Z=A(S),/^(?:parents|prev(?:Until|All))/),ne={children:!0,contents:!0,next:!0,prev:!0};function re(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}A.fn.extend({has:function(e){var t=A(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ae=/^$|^module$|\/(?:java|ecma)script/i,k=(P=S.createDocumentFragment().appendChild(S.createElement("div")),(a=S.createElement("input")).setAttribute("type","radio"),a.setAttribute("checked","checked"),a.setAttribute("name","t"),P.appendChild(a),g.checkClone=P.cloneNode(!0).cloneNode(!0).lastChild.checked,P.innerHTML="",g.noCloneChecked=!!P.cloneNode(!0).lastChild.defaultValue,P.innerHTML="",g.option=!!P.lastChild,{thead:[1,"

    • 登録先インデックスの指定

      デフォルトは「指定なし」です。

      +
      登録先インデックスの指定

      デフォルトは「指定なし」です。

      • 「指定なし」とした場合

      @@ -6598,15 +7459,13 @@ zu1101090.tif![コンピューターのスクリーンショット 自動的に

      当該ワークフローで登録されるアイテムはすべて、Admin>WorkFlow>Flow Listで指定したインデックスに自動で登録されます。

      -
      +
      ストレージロケーション プルダウンからアイテムの保存先ストレージを選択します。指定なしの場合はデフォルトのロケーションを選択します。
      表示/非表示 ロールごとに当該ワークフローの表示・非表示を指定することができます。
      Repositoryリポジトリを選択します。

      リポジトリを選択します。

      +

      ※コミュニティ管理者の場合は管理対象のインデックスのみ選択可能です。

      Resource Dump Manifest
      Repositoryリポジトリを選択します。

      リポジトリを選択します。

      +

      ※コミュニティ管理者の場合は管理対象のインデックスのみ選択可能です。

      Publish date
      Target Index

      収集されたアイテムに対して登録先インデックスを設定します。

      -

      必ず設定してください。

      Resync Mode
      ","
      "],col:[2,"","
      "],tr:[2,"","
      "],td:[3,"","
      "],_default:[0,"",""]});function O(e,t){var n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&u(e,t)?A.merge([e],n):n}function je(e,t){for(var n=0,r=e.length;n",""]);var Te=/<|&#?\w+;/;function Ce(e,t,n,r,o){for(var i,a,s,u,l,c=t.createDocumentFragment(),f=[],p=0,h=e.length;p\s*$/g;function Ie(e,t){return u(e,"table")&&u(11!==t.nodeType?t:t.firstChild,"tr")&&A(e).children("tbody")[0]||e}function Fe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Me(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function He(e,t){var n,r,o,i;if(1===t.nodeType){if(x.hasData(e)&&(i=x.get(e).events))for(o in x.remove(t,"handle events"),i)for(n=0,r=i[o].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",o=function(e){r.remove(),o=null,e&&t("error"===e.type?404:200,e.type)}),S.head.appendChild(r[0])},abort:function(){o&&o()}}}),[]),Yt=/(=)\?(?=&|$)|\?\?/,Kt=(A.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Jt.pop()||A.expando+"_"+Ot.guid++;return this[e]=!0,e}}),A.ajaxPrefilter("json jsonp",function(e,t,n){var r,o,i,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(Nt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return i||A.error(r+" was not called"),i[0]},e.dataTypes[0]="json",o=w[r],w[r]=function(){i=arguments},n.always(function(){void 0===o?A(w).removeProp(r):w[r]=o,e[r]&&(e.jsonpCallback=t.jsonpCallback,Jt.push(r)),i&&v(o)&&o(i[0]),i=o=void 0}),"script"}),g.createHTMLDocument=((e=S.implementation.createHTMLDocument("").body).innerHTML="
      ",2===e.childNodes.length),A.parseHTML=function(e,t,n){var r;return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(g.createHTMLDocument?((r=(t=S.implementation.createHTMLDocument("")).createElement("base")).href=S.location.href,t.head.appendChild(r)):t=S),r=!n&&[],(n=Y.exec(e))?[t.createElement(n[1])]:(n=Ce([e],t,r),r&&r.length&&A(r).remove(),A.merge([],n.childNodes)))},A.fn.load=function(e,t,n){var r,o,i,a=this,s=e.indexOf(" ");return-1").append(A.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,i||[e.responseText,t,e])})}),this},A.expr.pseudos.animated=function(t){return A.grep(A.timers,function(e){return t===e.elem}).length},A.offset={setOffset:function(e,t,n){var r,o,i,a,s=A.css(e,"position"),u=A(e),l={};"static"===s&&(e.style.position="relative"),i=u.offset(),r=A.css(e,"top"),a=A.css(e,"left"),s=("absolute"===s||"fixed"===s)&&-1<(r+a).indexOf("auto")?(o=(s=u.position()).top,s.left):(o=parseFloat(r)||0,parseFloat(a)||0),null!=(t=v(t)?t.call(e,n,A.extend({},i)):t).top&&(l.top=t.top-i.top+o),null!=t.left&&(l.left=t.left-i.left+s),"using"in t?t.using.call(e,l):("number"==typeof l.top&&(l.top+="px"),"number"==typeof l.left&&(l.left+="px"),u.css(l))}},A.fn.extend({offset:function(t){var e,n;return arguments.length?void 0===t?this:this.each(function(e){A.offset.setOffset(this,t,e)}):(n=this[0])?n.getClientRects().length?(e=n.getBoundingClientRect(),n=n.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],o={top:0,left:0};if("fixed"===A.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===A.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((o=A(e).offset()).top+=A.css(e,"borderTopWidth",!0),o.left+=A.css(e,"borderLeftWidth",!0))}return{top:t.top-o.top-A.css(r,"marginTop",!0),left:t.left-o.left-A.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===A.css(e,"position");)e=e.offsetParent;return e||T})}}),A.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,o){var i="pageYOffset"===o;A.fn[t]=function(e){return f(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[o]:e[t];r?r.scrollTo(i?r.pageXOffset:n,i?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),A.each(["top","left"],function(e,n){A.cssHooks[n]=tt(g.pixelPosition,function(e,t){if(t)return t=et(e,n),Je.test(t)?A(e).position()[n]+"px":t})}),A.each({Height:"height",Width:"width"},function(a,s){A.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,i){A.fn[i]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),o=r||(!0===e||!0===t?"margin":"border");return f(this,function(e,t,n){var r;return y(e)?0===i.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?A.css(e,t,o):A.style(e,t,n,o)},s,n?e:void 0,n)}})}),A.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){A.fn[t]=function(e){return this.on(t,e)}}),A.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),A.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){A.fn[n]=function(e,t){return 0 0, or `null`');if(U(a,"numericSeparator")&&"boolean"!=typeof a.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var t=a.numericSeparator;if(void 0===n)return"undefined";if(null===n)return"null";if("boolean"==typeof n)return n?"true":"false";if("string"==typeof n)return function e(t,n){if(t.length>n.maxStringLength)return r=t.length-n.maxStringLength,r="... "+r+" more character"+(1"}if(B(n))return 0===n.length?"[]":(u=Q(n,y),d&&!function(e){for(var t=0;t "+y(e,n))}),ne("Map",b.call(n),l,d)):function(e){if(w&&e&&"object"==typeof e)try{w.call(e);try{b.call(e)}catch(e){return 1}return e instanceof Set}catch(e){}return}(n)?(c=[],S&&S.call(n,function(e){c.push(y(e,n))}),ne("Set",w.call(n),c,d)):function(e){if(A&&e&&"object"==typeof e)try{A.call(e,A);try{j.call(e,j)}catch(e){return 1}return e instanceof WeakMap}catch(e){}return}(n)?V("WeakMap"):function(e){if(j&&e&&"object"==typeof e)try{j.call(e,j);try{A.call(e,A)}catch(e){return 1}return e instanceof WeakSet}catch(e){}return}(n)?V("WeakSet"):function(e){if(T&&e&&"object"==typeof e)try{return T.call(e),1}catch(e){}return}(n)?V("WeakRef"):"[object Number]"!==z(f=n)||L&&"object"==typeof f&&L in f?function(e){if(e&&"object"==typeof e&&D)try{return D.call(e),1}catch(e){}return}(n)?G(y(D.call(n))):"[object Boolean]"!==z(t=n)||L&&"object"==typeof t&&L in t?"[object String]"!==z(e=n)||L&&"object"==typeof e&&L in e?("[object Date]"!==z(t=n)||L&&"object"==typeof t&&L in t)&&!W(n)?(e=Q(n,y),t=I?I(n)===Object.prototype:n instanceof Object||n.constructor===Object,p=n instanceof Object?"":"null prototype",h=!t&&L&&Object(n)===n&&L in n?C.call(z(n),8,-1):p?"Object":"",t=(!t&&"function"==typeof n.constructor&&n.constructor.name?n.constructor.name+" ":"")+(h||p?"["+N.call(O.call([],h||[],p||[]),": ")+"] ":""),0===e.length?t+"{}":d?t+"{"+X(e,d)+"}":t+"{ "+N.call(e,", ")+" }"):String(n):G(y(String(n))):G(J.call(n)):G(y(Number(n)))};var u=Object.prototype.hasOwnProperty||function(e){return e in this};function U(e,t){return u.call(e,t)}function z(e){return a.call(e)}function ee(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n>6]+c[128|63&u]:u<55296||57344<=u?a+=c[224|u>>12]+c[128|u>>6&63]+c[128|63&u]:(s+=1,u=65536+((1023&u)<<10|1023&i.charCodeAt(s)),a+=c[240|u>>18]+c[128|u>>12&63]+c[128|u>>6&63]+c[128|63&u])}return a},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(y(e)){for(var n=[],r=0;r",'"',"`"," ","\r","\n","\t"]),C=["'"].concat(o),E=["%","/","?",";","#"].concat(C),k=["/","?","#"],O=/^[+a-z0-9A-Z_-]{0,63}$/,N=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,D={javascript:!0,"javascript:":!0},P={javascript:!0,"javascript:":!0},q={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},L=e("qs");function i(e,t,n){var r;return e&&"object"==typeof e&&e instanceof w?e:((r=new w).parse(e,t,n),r)}w.prototype.parse=function(e,t,n){if("string"!=typeof e)throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var r=e.indexOf("?"),r=-1!==r&&rli{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-y-combinator:before,.fa-yc:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-television:before,.fa-tv:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:"\f2a3"}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}/*! + * Preboot v2 + * git+https://github.com/mdo/preboot.git#4aab4edd85f076d50609cbe28e4fe66cc0771701 + * + * Open sourced under MIT license by @mdo. + * Some variables and mixins from Bootstrap (Apache 2 license). + */.book-langs-index{width:100%;height:100%;padding:40px 0;margin:0;overflow:auto}@media (max-width:600px){.book-langs-index{padding:0}}.book-langs-index .inner{max-width:600px;width:100%;margin:0 auto;padding:30px;background:#fff;border-radius:3px}.book-langs-index .inner h3{margin:0}.book-langs-index .inner .languages{list-style:none;padding:20px 30px;margin-top:20px;border-top:1px solid #eee}.book-langs-index .inner .languages:after,.book-langs-index .inner .languages:before{content:" ";display:table;line-height:0}.book-langs-index .inner .languages:after{clear:both}.book-langs-index .inner .languages li{width:50%;float:left;padding:10px 5px;font-size:16px}@media (max-width:600px){.book-langs-index .inner .languages li{width:100%;max-width:100%}}.book-header{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;overflow:visible;height:50px;padding:0 8px;z-index:2;font-size:.85em;color:#7e888b;background:0 0}.book-header .btn{display:block;height:50px;padding:0 15px;border-bottom:none;color:#ccc;text-transform:uppercase;line-height:50px;-webkit-box-shadow:none!important;box-shadow:none!important;position:relative;font-size:14px}.book-header .btn:hover{position:relative;text-decoration:none;color:#444;background:0 0}.book-header .btn:focus{outline:0}.book-header h1{margin:0;font-size:20px;font-weight:200;text-align:center;line-height:50px;opacity:0;-webkit-transition:opacity ease .4s;-moz-transition:opacity ease .4s;-o-transition:opacity ease .4s;transition:opacity ease .4s;padding-left:200px;padding-right:200px;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;-o-transition:opacity .2s ease;transition:opacity .2s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-header h1 a,.book-header h1 a:hover{color:inherit;text-decoration:none}@media screen and (max-width:1000px){.book-header h1{display:none}}.book-header h1 i{display:none}.book-header:hover h1{opacity:1}.book.is-loading .book-header h1 i{display:inline-block}.book.is-loading .book-header h1 a{display:none}@media print{.book-header{display:none}}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;left:0;z-index:100;display:none;float:left;min-width:160px;padding:0;margin:2px 0 0;list-style:none;font-size:14px;background-color:#fafafa;border:1px solid rgba(0,0,0,.07);border-radius:1px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.open{display:block}.dropdown-menu.dropdown-left{left:auto;right:4%}.dropdown-menu.dropdown-left .dropdown-caret{right:14px;left:auto}.dropdown-menu .dropdown-caret{position:absolute;top:-8px;left:14px;width:18px;height:10px;float:left;overflow:hidden}.dropdown-menu .dropdown-caret .caret-outer{position:absolute;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid rgba(0,0,0,.1);height:auto;left:0;top:0;width:auto;display:inline-block;margin-left:-1px}.dropdown-menu .dropdown-caret .caret-inner{position:absolute;display:inline-block;margin-top:-1px;top:0;top:1px;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fafafa}.dropdown-menu .buttons{border-bottom:1px solid rgba(0,0,0,.07)}.dropdown-menu .buttons:after,.dropdown-menu .buttons:before{content:" ";display:table;line-height:0}.dropdown-menu .buttons:after{clear:both}.dropdown-menu .buttons:last-child{border-bottom:none}.dropdown-menu .buttons .button{border:0;background-color:transparent;color:#a6a6a6;width:100%;text-align:center;float:left;line-height:1.42857143;padding:8px 4px}.dropdown-menu .buttons .button:hover{color:#444}.dropdown-menu .buttons .button:focus,.dropdown-menu .buttons .button:hover{outline:0}.dropdown-menu .buttons .button.size-2{width:50%}.dropdown-menu .buttons .button.size-3{width:33%}.book-summary{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;position:absolute;top:0;left:-300px;bottom:0;z-index:1;overflow-y:auto;width:300px;color:#364149;background:#fafafa;border-right:1px solid rgba(0,0,0,.07);-webkit-transition:left 250ms ease;-moz-transition:left 250ms ease;-o-transition:left 250ms ease;transition:left 250ms ease}.book-summary ul.summary{list-style:none;margin:0;padding:0;-webkit-transition:top .5s ease;-moz-transition:top .5s ease;-o-transition:top .5s ease;transition:top .5s ease}.book-summary ul.summary li{list-style:none}.book-summary ul.summary li.header{padding:10px 15px;padding-top:20px;text-transform:uppercase;color:#939da3}.book-summary ul.summary li.divider{height:1px;margin:7px 0;overflow:hidden;background:rgba(0,0,0,.07)}.book-summary ul.summary li i.fa-check{display:none;position:absolute;right:9px;top:16px;font-size:9px;color:#3c3}.book-summary ul.summary li.done>a{color:#364149;font-weight:400}.book-summary ul.summary li.done>a i{display:inline}.book-summary ul.summary li a,.book-summary ul.summary li span{display:block;padding:10px 15px;border-bottom:none;color:#364149;background:0 0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;position:relative}.book-summary ul.summary li a:hover{text-decoration:underline}.book-summary ul.summary li a:focus{outline:0}.book-summary ul.summary li.active>a{color:#008cff;background:0 0;text-decoration:none}.book-summary ul.summary li ul{padding-left:20px}@media screen and (max-width:600px){.book-summary{width:calc(100% - 60px);bottom:0;left:-100%}}.book.with-summary .book-summary{left:0}.book.without-animation .book-summary{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important}@media print{.book-summary{display:none}.book-body{left:0}}.book{position:relative;width:100%;height:100%}@media screen and (min-width:600px){.book.with-summary .book-body{left:300px}}@media screen and (max-width:600px){.book.with-summary{overflow:hidden}.book.with-summary .book-body{-webkit-transform:translate(calc(100% - 60px),0);-moz-transform:translate(calc(100% - 60px),0);-ms-transform:translate(calc(100% - 60px),0);-o-transform:translate(calc(100% - 60px),0);transform:translate(calc(100% - 60px),0)}}.book.without-animation .book-body{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important}.book-body{position:absolute;top:0;right:0;left:0;bottom:0;overflow-y:auto;color:#000;background:#fff;-webkit-transition:left 250ms ease;-moz-transition:left 250ms ease;-o-transition:left 250ms ease;transition:left 250ms ease}.book-body .body-inner{position:absolute;top:0;right:0;left:0;bottom:0;overflow-y:auto}@media screen and (max-width:1240px){.book-body{-webkit-transition:-webkit-transform 250ms ease;-moz-transition:-moz-transform 250ms ease;-o-transition:-o-transform 250ms ease;transition:transform 250ms ease;padding-bottom:20px}.book-body .body-inner{position:static;min-height:calc(100% - 50px)}}.honkit-cloak{display:none}@media print{.book{position:static}.book-body{position:static}.book-body .body-inner{position:static}}.page-wrapper{position:relative;outline:0}.page-inner{position:relative;max-width:800px;margin:0 auto;padding:20px 15px 40px 15px}.page-inner .btn-group .btn{border-radius:0;background:#eee;border:0}.buttons:after,.buttons:before{content:" ";display:table;line-height:0}.buttons:after{clear:both}.button{border:0;background-color:transparent;background:#eee;color:#666;width:100%;text-align:center;float:left;line-height:1.42857143;padding:8px 4px}.button:hover{color:#444}.button:focus,.button:hover{outline:0}.button.size-2{width:50%}.button.size-3{width:33%}.markdown-section{display:block;word-wrap:break-word;overflow:hidden;color:#333;line-height:1.7;text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%}.markdown-section *{box-sizing:border-box;-webkit-box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section>:last-child{margin-bottom:0!important}.markdown-section blockquote,.markdown-section code,.markdown-section figure,.markdown-section img,.markdown-section pre,.markdown-section table,.markdown-section tr{page-break-inside:avoid}.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section h5,.markdown-section p{orphans:3;widows:3}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section h5{page-break-after:avoid}.markdown-section b,.markdown-section strong{font-weight:700}.markdown-section em{font-style:italic}.markdown-section blockquote,.markdown-section dl,.markdown-section ol,.markdown-section p,.markdown-section table,.markdown-section ul{margin-top:0;margin-bottom:.85em}.markdown-section a{color:#4183c4;text-decoration:none;background:0 0}.markdown-section a:active,.markdown-section a:focus,.markdown-section a:hover{outline:0;text-decoration:underline}.markdown-section img{border:0;max-width:100%}.markdown-section hr{height:4px;padding:0;margin:1.7em 0;overflow:hidden;background-color:#e7e7e7;border:none}.markdown-section hr:after,.markdown-section hr:before{display:table;content:" "}.markdown-section hr:after{clear:both}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section h5,.markdown-section h6{margin-top:1.275em;margin-bottom:.85em;font-weight:700}.markdown-section h1{font-size:2em}.markdown-section h2{font-size:1.75em}.markdown-section h3{font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section code,.markdown-section pre{font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace;direction:ltr;margin:0;padding:0;border:none;color:inherit}.markdown-section pre{overflow:auto;word-wrap:normal;margin:0;padding:.85em 1em;margin-bottom:1.275em;background:#f7f7f7}.markdown-section pre>code{display:inline;max-width:initial;padding:0;margin:0;overflow:initial;line-height:inherit;font-size:.85em;white-space:pre;background:0 0}.markdown-section pre>code:after,.markdown-section pre>code:before{content:normal}.markdown-section code{padding:.2em;margin:0;font-size:.85em;background-color:#f7f7f7}.markdown-section code:after,.markdown-section code:before{letter-spacing:-.2em;content:"\00a0"}.markdown-section table{display:table;width:100%;border-collapse:collapse;border-spacing:0;overflow:auto}.markdown-section table td,.markdown-section table th{padding:6px 13px;border:1px solid #ddd}.markdown-section table tr{background-color:#fff;border-top:1px solid #ccc}.markdown-section table tr:nth-child(2n){background-color:#f8f8f8}.markdown-section table th{font-weight:700}.markdown-section ol,.markdown-section ul{padding:0;margin:0;margin-bottom:.85em;padding-left:2em}.markdown-section ol ol,.markdown-section ol ul,.markdown-section ul ol,.markdown-section ul ul{margin-top:0;margin-bottom:0}.markdown-section ol ol{list-style-type:lower-roman}.markdown-section blockquote{margin:0;margin-bottom:.85em;padding:0 15px;color:#858585;border-left:4px solid #e5e5e5}.markdown-section blockquote:first-child{margin-top:0}.markdown-section blockquote:last-child{margin-bottom:0}.markdown-section dl{padding:0}.markdown-section dl dt{padding:0;margin-top:.85em;font-style:italic;font-weight:700}.markdown-section dl dd{padding:0 .85em;margin-bottom:.85em}.markdown-section dd{margin-left:0}.markdown-section .glossary-term{cursor:help;text-decoration:underline}.navigation{position:absolute;top:50px;bottom:0;margin:0;max-width:150px;min-width:90px;display:flex;justify-content:center;align-content:center;flex-direction:column;font-size:40px;color:#ccc;text-align:center;-webkit-transition:all 350ms ease;-moz-transition:all 350ms ease;-o-transition:all 350ms ease;transition:all 350ms ease}.navigation:hover{text-decoration:none;color:#444}.navigation.navigation-next{right:0}.navigation.navigation-prev{left:0}@media screen and (max-width:1240px){.navigation{position:static;top:auto;max-width:50%;width:50%;display:inline-block;float:left}.navigation.navigation-unique{max-width:100%;width:100%}}@media print{.navigation{display:none}}#book-search-input{padding:6px;background:0 0;transition:top .5s ease;background:#fff;border-bottom:1px solid rgba(0,0,0,.07);border-top:1px solid rgba(0,0,0,.07);margin-bottom:10px;margin-top:-1px}#book-search-input input,#book-search-input input:focus,#book-search-input input:hover{width:100%;background:0 0;border:1px solid transparent;box-shadow:none;outline:0;line-height:22px;padding:7px 7px;color:inherit}#book-search-results{opacity:1}#book-search-results .search-results .search-results-title{text-transform:uppercase;text-align:center;font-weight:200;margin-bottom:35px;opacity:.6}#book-search-results .search-results .has-results .search-results-item{display:block;word-wrap:break-word;overflow:hidden;color:#333;line-height:1.7;text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%}#book-search-results .search-results .has-results .search-results-item *{box-sizing:border-box;-webkit-box-sizing:border-box;font-size:inherit}#book-search-results .search-results .has-results .search-results-item>:first-child{margin-top:0!important}#book-search-results .search-results .has-results .search-results-item>:last-child{margin-bottom:0!important}#book-search-results .search-results .has-results .search-results-item blockquote,#book-search-results .search-results .has-results .search-results-item code,#book-search-results .search-results .has-results .search-results-item figure,#book-search-results .search-results .has-results .search-results-item img,#book-search-results .search-results .has-results .search-results-item pre,#book-search-results .search-results .has-results .search-results-item table,#book-search-results .search-results .has-results .search-results-item tr{page-break-inside:avoid}#book-search-results .search-results .has-results .search-results-item h2,#book-search-results .search-results .has-results .search-results-item h3,#book-search-results .search-results .has-results .search-results-item h4,#book-search-results .search-results .has-results .search-results-item h5,#book-search-results .search-results .has-results .search-results-item p{orphans:3;widows:3}#book-search-results .search-results .has-results .search-results-item h1,#book-search-results .search-results .has-results .search-results-item h2,#book-search-results .search-results .has-results .search-results-item h3,#book-search-results .search-results .has-results .search-results-item h4,#book-search-results .search-results .has-results .search-results-item h5{page-break-after:avoid}#book-search-results .search-results .has-results .search-results-item b,#book-search-results .search-results .has-results .search-results-item strong{font-weight:700}#book-search-results .search-results .has-results .search-results-item em{font-style:italic}#book-search-results .search-results .has-results .search-results-item blockquote,#book-search-results .search-results .has-results .search-results-item dl,#book-search-results .search-results .has-results .search-results-item ol,#book-search-results .search-results .has-results .search-results-item p,#book-search-results .search-results .has-results .search-results-item table,#book-search-results .search-results .has-results .search-results-item ul{margin-top:0;margin-bottom:.85em}#book-search-results .search-results .has-results .search-results-item a{color:#4183c4;text-decoration:none;background:0 0}#book-search-results .search-results .has-results .search-results-item a:active,#book-search-results .search-results .has-results .search-results-item a:focus,#book-search-results .search-results .has-results .search-results-item a:hover{outline:0;text-decoration:underline}#book-search-results .search-results .has-results .search-results-item img{border:0;max-width:100%}#book-search-results .search-results .has-results .search-results-item hr{height:4px;padding:0;margin:1.7em 0;overflow:hidden;background-color:#e7e7e7;border:none}#book-search-results .search-results .has-results .search-results-item hr:after,#book-search-results .search-results .has-results .search-results-item hr:before{display:table;content:" "}#book-search-results .search-results .has-results .search-results-item hr:after{clear:both}#book-search-results .search-results .has-results .search-results-item h1,#book-search-results .search-results .has-results .search-results-item h2,#book-search-results .search-results .has-results .search-results-item h3,#book-search-results .search-results .has-results .search-results-item h4,#book-search-results .search-results .has-results .search-results-item h5,#book-search-results .search-results .has-results .search-results-item h6{margin-top:1.275em;margin-bottom:.85em;font-weight:700}#book-search-results .search-results .has-results .search-results-item h1{font-size:2em}#book-search-results .search-results .has-results .search-results-item h2{font-size:1.75em}#book-search-results .search-results .has-results .search-results-item h3{font-size:1.5em}#book-search-results .search-results .has-results .search-results-item h4{font-size:1.25em}#book-search-results .search-results .has-results .search-results-item h5{font-size:1em}#book-search-results .search-results .has-results .search-results-item h6{font-size:1em;color:#777}#book-search-results .search-results .has-results .search-results-item code,#book-search-results .search-results .has-results .search-results-item pre{font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace;direction:ltr;margin:0;padding:0;border:none;color:inherit}#book-search-results .search-results .has-results .search-results-item pre{overflow:auto;word-wrap:normal;margin:0;padding:.85em 1em;margin-bottom:1.275em;background:#f7f7f7}#book-search-results .search-results .has-results .search-results-item pre>code{display:inline;max-width:initial;padding:0;margin:0;overflow:initial;line-height:inherit;font-size:.85em;white-space:pre;background:0 0}#book-search-results .search-results .has-results .search-results-item pre>code:after,#book-search-results .search-results .has-results .search-results-item pre>code:before{content:normal}#book-search-results .search-results .has-results .search-results-item code{padding:.2em;margin:0;font-size:.85em;background-color:#f7f7f7}#book-search-results .search-results .has-results .search-results-item code:after,#book-search-results .search-results .has-results .search-results-item code:before{letter-spacing:-.2em;content:"\00a0"}#book-search-results .search-results .has-results .search-results-item table{display:table;width:100%;border-collapse:collapse;border-spacing:0;overflow:auto}#book-search-results .search-results .has-results .search-results-item table td,#book-search-results .search-results .has-results .search-results-item table th{padding:6px 13px;border:1px solid #ddd}#book-search-results .search-results .has-results .search-results-item table tr{background-color:#fff;border-top:1px solid #ccc}#book-search-results .search-results .has-results .search-results-item table tr:nth-child(2n){background-color:#f8f8f8}#book-search-results .search-results .has-results .search-results-item table th{font-weight:700}#book-search-results .search-results .has-results .search-results-item ol,#book-search-results .search-results .has-results .search-results-item ul{padding:0;margin:0;margin-bottom:.85em;padding-left:2em}#book-search-results .search-results .has-results .search-results-item ol ol,#book-search-results .search-results .has-results .search-results-item ol ul,#book-search-results .search-results .has-results .search-results-item ul ol,#book-search-results .search-results .has-results .search-results-item ul ul{margin-top:0;margin-bottom:0}#book-search-results .search-results .has-results .search-results-item ol ol{list-style-type:lower-roman}#book-search-results .search-results .has-results .search-results-item blockquote{margin:0;margin-bottom:.85em;padding:0 15px;color:#858585;border-left:4px solid #e5e5e5}#book-search-results .search-results .has-results .search-results-item blockquote:first-child{margin-top:0}#book-search-results .search-results .has-results .search-results-item blockquote:last-child{margin-bottom:0}#book-search-results .search-results .has-results .search-results-item dl{padding:0}#book-search-results .search-results .has-results .search-results-item dl dt{padding:0;margin-top:.85em;font-style:italic;font-weight:700}#book-search-results .search-results .has-results .search-results-item dl dd{padding:0 .85em;margin-bottom:.85em}#book-search-results .search-results .has-results .search-results-item dd{margin-left:0}#book-search-results .search-results .has-results .search-results-item h3{margin-top:0;margin-bottom:0}#book-search-results .search-results .no-results{padding:40px 0}body.search-loading #book-search-results{opacity:.3}body.with-search .navigation{display:none}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}a{text-decoration:none}body,html{height:100%}html{font-size:62.5%}body{text-rendering:optimizeLegibility;font-smoothing:antialiased;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;letter-spacing:.2px;text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%} \ No newline at end of file diff --git a/docs/manuals/ADMIN/html/gitbook/theme.js b/docs/manuals/ADMIN/html/gitbook/theme.js new file mode 100644 index 00000000..1768ac6e --- /dev/null +++ b/docs/manuals/ADMIN/html/gitbook/theme.js @@ -0,0 +1 @@ +!function r(o,i,a){function s(t,e){if(!i[t]){if(!o[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(l)return l(t,!0);throw(e=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",e}n=i[t]={exports:{}},o[t][0].call(n.exports,function(e){return s(o[t][1][e]||e)},n,n.exports,r,o,i,a)}return i[t].exports}for(var l="function"==typeof require&&require,e=0;e= 0x80 (not a basic code point)","invalid-input":"Invalid input"},p=m-1,b=Math.floor,x=String.fromCharCode;function w(e){throw new RangeError(f[e])}function d(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function h(e,t){var n=e.split("@"),r="",n=(1>>10&1023|55296),e=56320|1023&e),t+=x(e)}).join("")}function j(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function A(e,t,n){var r=0;for(e=n?b(e/s):e>>1,e+=b(e/t);p*v>>1b((g-c)/i))&&w("overflow"),c+=s*i,!(s<(s=a<=p?1:p+v<=a?v:a-p));a+=m)i>b(g/(s=m-s))&&w("overflow"),i*=s;p=A(c-o,t=l.length+1,0==o),b(c/t)>g-f&&w("overflow"),f+=b(c/t),c%=t,l.splice(c++,0,f)}return y(l)}function C(e){for(var t,n,r,o,i,a,s,l,u,c,f=[],p=(e=S(e)).length,d=128,h=72,y=t=0;yb((g-t)/(l=n+1))&&w("overflow"),t+=(o-d)*l,d=o,y=0;yg&&w("overflow"),s==d){for(i=t,a=m;!(i<(u=a<=h?1:h+v<=a?v:a-h));a+=m)f.push(x(j(u+(c=i-u)%(u=m-u),0))),i=b(c/u);f.push(x(j(i,0))),h=A(t,l,n==r),t=0,++n}++t,++d}return f.join("")}if(o={version:"1.4.1",ucs2:{decode:S,encode:y},decode:k,encode:C,toASCII:function(e){return h(e,function(e){return u.test(e)?"xn--"+C(e):e})},toUnicode:function(e){return h(e,function(e){return l.test(e)?k(e.slice(4).toLowerCase()):e})}},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return o});else if(t&&n)if(E.exports==t)n.exports=o;else for(i in o)o.hasOwnProperty(i)&&(t[i]=o[i]);else e.punycode=o}.call(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],3:[function(e,t,n){"use strict";var r=e("get-intrinsic"),o=e("./"),i=o(r("String.prototype.indexOf"));t.exports=function(e,t){t=r(e,!!t);return"function"==typeof t&&-1=n.length?(l=!!(f=h(i,u)))&&"get"in f&&!("originalValue"in f.get)?f.get:i[u]:(l=b(i,u),i[u]),l&&!a&&(g[c]=i)}}return i}},{"function-bind":6,has:11,"has-proto":8,"has-symbols":9}],8:[function(e,t,n){"use strict";var r={foo:{}},o=Object;t.exports=function(){return{__proto__:r}.foo===r.foo&&!({__proto__:null}instanceof o)}},{}],9:[function(e,t,n){"use strict";var r="undefined"!=typeof Symbol&&Symbol,o=e("./shams");t.exports=function(){return"function"==typeof r&&("function"==typeof Symbol&&("symbol"==typeof r("foo")&&("symbol"==typeof Symbol("bar")&&o())))}},{"./shams":10}],10:[function(e,t,n){"use strict";t.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"!=typeof Symbol.iterator){var e={},t=Symbol("test"),n=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;n=Object.getOwnPropertySymbols(e);if(1!==n.length||n[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){n=Object.getOwnPropertyDescriptor(e,t);if(42!==n.value||!0!==n.enumerable)return!1}}return!0}},{}],11:[function(e,t,n){"use strict";e=e("function-bind");t.exports=e.call(Function.call,Object.prototype.hasOwnProperty)},{"function-bind":6}],12:[function(e,n,t){!function(e,t){"use strict";"object"==typeof n&&"object"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(e.document)return t(e);throw new Error("jQuery requires a window with a document")}:t(e)}("undefined"!=typeof window?window:this,function(w,I){"use strict";function v(e){return"function"==typeof e&&"number"!=typeof e.nodeType}function y(e){return null!=e&&e===e.window}var t=[],M=Object.getPrototypeOf,s=t.slice,F=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},H=t.push,_=t.indexOf,B={},W=B.toString,$=B.hasOwnProperty,U=$.toString,z=U.call(Object),g={},S=w.document,G={type:!0,src:!0,nonce:!0,noModule:!0};function V(e,t,n){var r,o,i=(n=n||S).createElement("script");if(i.text=e,t)for(r in G)(o=t[r]||t.getAttribute&&t.getAttribute(r))&&i.setAttribute(r,o);n.head.appendChild(i).parentNode.removeChild(i)}function h(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?B[W.call(e)]||"object":typeof e}var j=function(e,t){return new j.fn.init(e,t)};function X(e){var t=!!e&&"length"in e&&e.length,n=h(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0>10|55296,1023&e|56320))}function M(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e}function F(){S()}var e,p,x,i,H,d,_,B,w,l,u,S,j,n,A,h,r,o,y,k="sizzle"+ +new Date,c=I.document,C=0,W=0,$=P(),U=P(),z=P(),g=P(),G=function(e,t){return e===t&&(u=!0),0},V={}.hasOwnProperty,t=[],X=t.pop,K=t.push,T=t.push,Q=t.slice,v=function(e,t){for(var n=0,r=e.length;n+~]|"+a+")"+a+"*"),re=new RegExp(a+"|>"),oe=new RegExp(Z),ie=new RegExp("^"+s+"$"),b={ID:new RegExp("^#("+s+")"),CLASS:new RegExp("^\\.("+s+")"),TAG:new RegExp("^("+s+"|[*])"),ATTR:new RegExp("^"+Y),PSEUDO:new RegExp("^"+Z),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+a+"*(even|odd|(([+-]|)(\\d*)n|)"+a+"*(?:([+-]|)"+a+"*(\\d+)|))"+a+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+a+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+a+"*((?:-\\d)?\\d*)"+a+"*\\)|)(?=[^-]|$)","i")},ae=/HTML$/i,se=/^(?:input|select|textarea|button)$/i,le=/^h\d$/i,E=/^[^{]+\{\s*\[native \w/,ue=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ce=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+a+"?|\\\\([^\\r\\n\\f])","g"),fe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,pe=ve(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{T.apply(t=Q.call(c.childNodes),c.childNodes),t[c.childNodes.length].nodeType}catch(e){T={apply:t.length?function(e,t){K.apply(e,Q.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function N(t,e,n,r){var o,i,a,s,l,u,c=e&&e.ownerDocument,f=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==f&&9!==f&&11!==f)return n;if(!r&&(S(e),e=e||j,A)){if(11!==f&&(s=ue.exec(t)))if(o=s[1]){if(9===f){if(!(u=e.getElementById(o)))return n;if(u.id===o)return n.push(u),n}else if(c&&(u=c.getElementById(o))&&y(e,u)&&u.id===o)return n.push(u),n}else{if(s[2])return T.apply(n,e.getElementsByTagName(t)),n;if((o=s[3])&&p.getElementsByClassName&&e.getElementsByClassName)return T.apply(n,e.getElementsByClassName(o)),n}if(p.qsa&&!g[t+" "]&&(!h||!h.test(t))&&(1!==f||"object"!==e.nodeName.toLowerCase())){if(u=t,c=e,1===f&&(re.test(t)||ne.test(t))){for((c=ce.test(t)&&ge(e.parentNode)||e)===e&&p.scope||((a=e.getAttribute("id"))?a=a.replace(fe,M):e.setAttribute("id",a=k)),i=(l=d(t)).length;i--;)l[i]=(a?"#"+a:":scope")+" "+R(l[i]);u=l.join(",")}try{return T.apply(n,c.querySelectorAll(u)),n}catch(e){g(t,!0)}finally{a===k&&e.removeAttribute("id")}}}return B(t.replace(m,"$1"),e,n,r)}function P(){var n=[];function r(e,t){return n.push(e+" ")>x.cacheLength&&delete r[n.shift()],r[e+" "]=t}return r}function D(e){return e[k]=!0,e}function q(e){var t=j.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t)}}function de(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function he(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function ye(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&pe(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function L(a){return D(function(i){return i=+i,D(function(e,t){for(var n,r=a([],e.length,i),o=r.length;o--;)e[n=r[o]]&&(e[n]=!(t[n]=e[n]))})})}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in p=N.support={},H=N.isXML=function(e){var t=e.namespaceURI,e=(e.ownerDocument||e).documentElement;return!ae.test(t||e&&e.nodeName||"HTML")},S=N.setDocument=function(e){var e=e?e.ownerDocument||e:c;return e!=j&&9===e.nodeType&&e.documentElement&&(n=(j=e).documentElement,A=!H(j),c!=j&&(e=j.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",F,!1):e.attachEvent&&e.attachEvent("onunload",F)),p.scope=q(function(e){return n.appendChild(e).appendChild(j.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),p.attributes=q(function(e){return e.className="i",!e.getAttribute("className")}),p.getElementsByTagName=q(function(e){return e.appendChild(j.createComment("")),!e.getElementsByTagName("*").length}),p.getElementsByClassName=E.test(j.getElementsByClassName),p.getById=q(function(e){return n.appendChild(e).id=k,!j.getElementsByName||!j.getElementsByName(k).length}),p.getById?(x.filter.ID=function(e){var t=e.replace(O,f);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&A)return(t=t.getElementById(e))?[t]:[]}):(x.filter.ID=function(e){var t=e.replace(O,f);return function(e){e=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return e&&e.value===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&A){var n,r,o,i=t.getElementById(e);if(i){if((n=i.getAttributeNode("id"))&&n.value===e)return[i];for(o=t.getElementsByName(e),r=0;i=o[r++];)if((n=i.getAttributeNode("id"))&&n.value===e)return[i]}return[]}}),x.find.TAG=p.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):p.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"!==e)return i;for(;n=i[o++];)1===n.nodeType&&r.push(n);return r},x.find.CLASS=p.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&A)return t.getElementsByClassName(e)},r=[],h=[],(p.qsa=E.test(j.querySelectorAll))&&(q(function(e){var t;n.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&h.push("[*^$]="+a+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||h.push("\\["+a+"*(?:value|"+J+")"),e.querySelectorAll("[id~="+k+"-]").length||h.push("~="),(t=j.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||h.push("\\["+a+"*name"+a+"*="+a+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||h.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||h.push(".#.+[+~]"),e.querySelectorAll("\\\f"),h.push("[\\r\\n\\f]")}),q(function(e){e.innerHTML="";var t=j.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&h.push("name"+a+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&h.push(":enabled",":disabled"),n.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&h.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),h.push(",.*:")})),(p.matchesSelector=E.test(o=n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.oMatchesSelector||n.msMatchesSelector))&&q(function(e){p.disconnectedMatch=o.call(e,"*"),o.call(e,"[s!='']:x"),r.push("!=",Z)}),h=h.length&&new RegExp(h.join("|")),r=r.length&&new RegExp(r.join("|")),e=E.test(n.compareDocumentPosition),y=e||E.test(n.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,t=t&&t.parentNode;return e===t||!(!t||1!==t.nodeType||!(n.contains?n.contains(t):e.compareDocumentPosition&&16&e.compareDocumentPosition(t)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},G=e?function(e,t){var n;return e===t?(u=!0,0):(n=!e.compareDocumentPosition-!t.compareDocumentPosition)||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!p.sortDetached&&t.compareDocumentPosition(e)===n?e==j||e.ownerDocument==c&&y(c,e)?-1:t==j||t.ownerDocument==c&&y(c,t)?1:l?v(l,e)-v(l,t):0:4&n?-1:1)}:function(e,t){if(e===t)return u=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,a=[e],s=[t];if(!o||!i)return e==j?-1:t==j?1:o?-1:i?1:l?v(l,e)-v(l,t):0;if(o===i)return he(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?he(a[r],s[r]):a[r]==c?-1:s[r]==c?1:0}),j},N.matches=function(e,t){return N(e,null,null,t)},N.matchesSelector=function(e,t){if(S(e),p.matchesSelector&&A&&!g[t+" "]&&(!r||!r.test(t))&&(!h||!h.test(t)))try{var n=o.call(e,t);if(n||p.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){g(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,f),e[3]=(e[3]||e[4]||e[5]||"").replace(O,f),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||N.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&N.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return b.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&oe.test(n)&&(t=d(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,f).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+a+")"+e+"("+a+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(t,n,r){return function(e){e=N.attr(e,t);return null==e?"!="===n:!n||(e+="","="===n?e===r:"!="===n?e!==r:"^="===n?r&&0===e.indexOf(r):"*="===n?r&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function Y(e,n,r){return v(n)?j.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?j.grep(e,function(e){return e===n!==r}):"string"!=typeof n?j.grep(e,function(e){return-1<_.call(n,e)!==r}):j.filter(n,e,r)}j.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?j.find.matchesSelector(r,e)?[r]:[]:j.find.matches(e,j.grep(t,function(e){return 1===e.nodeType}))},j.fn.extend({find:function(e){var t,n,r=this.length,o=this;if("string"!=typeof e)return this.pushStack(j(e).filter(function(){for(t=0;t)[^>]*|#([\w-]+))$/,te=((j.fn.init=function(e,t,n){if(e){if(n=n||Z,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(j):j.makeArray(e,this);if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:ee.exec(e))||!r[1]&&t)return(!t||t.jquery?t||n:this.constructor(t)).find(e);if(r[1]){if(t=t instanceof j?t[0]:t,j.merge(this,j.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),J.test(r[1])&&j.isPlainObject(t))for(var r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r])}else(n=S.getElementById(r[2]))&&(this[0]=n,this.length=1)}return this}).prototype=j.fn,Z=j(S),/^(?:parents|prev(?:Until|All))/),ne={children:!0,contents:!0,next:!0,prev:!0};function re(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}j.fn.extend({has:function(e){var t=j(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,je=/^$|^module$|\/(?:java|ecma)script/i,E=(D=S.createDocumentFragment().appendChild(S.createElement("div")),(a=S.createElement("input")).setAttribute("type","radio"),a.setAttribute("checked","checked"),a.setAttribute("name","t"),D.appendChild(a),g.checkClone=D.cloneNode(!0).cloneNode(!0).lastChild.checked,D.innerHTML="",g.noCloneChecked=!!D.cloneNode(!0).lastChild.defaultValue,D.innerHTML="",g.option=!!D.lastChild,{thead:[1,"","
      "],col:[2,"","
      "],tr:[2,"","
      "],td:[3,"","
      "],_default:[0,"",""]});function O(e,t){var n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&l(e,t)?j.merge([e],n):n}function Ae(e,t){for(var n=0,r=e.length;n",""]);var ke=/<|&#?\w+;/;function Ce(e,t,n,r,o){for(var i,a,s,l,u,c=t.createDocumentFragment(),f=[],p=0,d=e.length;p\s*$/g;function Ie(e,t){return l(e,"table")&&l(11!==t.nodeType?t:t.firstChild,"tr")&&j(e).children("tbody")[0]||e}function Me(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Fe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function He(e,t){var n,r,o,i;if(1===t.nodeType){if(x.hasData(e)&&(i=x.get(e).events))for(o in x.remove(t,"handle events"),i)for(n=0,r=i[o].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",o=function(e){r.remove(),o=null,e&&t("error"===e.type?404:200,e.type)}),S.head.appendChild(r[0])},abort:function(){o&&o()}}}),[]),Jt=/(=)\?(?=&|$)|\?\?/,Yt=(j.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Qt.pop()||j.expando+"_"+Ot.guid++;return this[e]=!0,e}}),j.ajaxPrefilter("json jsonp",function(e,t,n){var r,o,i,a=!1!==e.jsonp&&(Jt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Jt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Jt,"$1"+r):!1!==e.jsonp&&(e.url+=(Nt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return i||j.error(r+" was not called"),i[0]},e.dataTypes[0]="json",o=w[r],w[r]=function(){i=arguments},n.always(function(){void 0===o?j(w).removeProp(r):w[r]=o,e[r]&&(e.jsonpCallback=t.jsonpCallback,Qt.push(r)),i&&v(o)&&o(i[0]),i=o=void 0}),"script"}),g.createHTMLDocument=((e=S.implementation.createHTMLDocument("").body).innerHTML="
      ",2===e.childNodes.length),j.parseHTML=function(e,t,n){var r;return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(g.createHTMLDocument?((r=(t=S.implementation.createHTMLDocument("")).createElement("base")).href=S.location.href,t.head.appendChild(r)):t=S),r=!n&&[],(n=J.exec(e))?[t.createElement(n[1])]:(n=Ce([e],t,r),r&&r.length&&j(r).remove(),j.merge([],n.childNodes)))},j.fn.load=function(e,t,n){var r,o,i,a=this,s=e.indexOf(" ");return-1").append(j.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,i||[e.responseText,t,e])})}),this},j.expr.pseudos.animated=function(t){return j.grep(j.timers,function(e){return t===e.elem}).length},j.offset={setOffset:function(e,t,n){var r,o,i,a,s=j.css(e,"position"),l=j(e),u={};"static"===s&&(e.style.position="relative"),i=l.offset(),r=j.css(e,"top"),a=j.css(e,"left"),s=("absolute"===s||"fixed"===s)&&-1<(r+a).indexOf("auto")?(o=(s=l.position()).top,s.left):(o=parseFloat(r)||0,parseFloat(a)||0),null!=(t=v(t)?t.call(e,n,j.extend({},i)):t).top&&(u.top=t.top-i.top+o),null!=t.left&&(u.left=t.left-i.left+s),"using"in t?t.using.call(e,u):("number"==typeof u.top&&(u.top+="px"),"number"==typeof u.left&&(u.left+="px"),l.css(u))}},j.fn.extend({offset:function(t){var e,n;return arguments.length?void 0===t?this:this.each(function(e){j.offset.setOffset(this,t,e)}):(n=this[0])?n.getClientRects().length?(e=n.getBoundingClientRect(),n=n.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],o={top:0,left:0};if("fixed"===j.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===j.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((o=j(e).offset()).top+=j.css(e,"borderTopWidth",!0),o.left+=j.css(e,"borderLeftWidth",!0))}return{top:t.top-o.top-j.css(r,"marginTop",!0),left:t.left-o.left-j.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===j.css(e,"position");)e=e.offsetParent;return e||k})}}),j.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,o){var i="pageYOffset"===o;j.fn[t]=function(e){return f(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[o]:e[t];r?r.scrollTo(i?r.pageXOffset:n,i?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),j.each(["top","left"],function(e,n){j.cssHooks[n]=tt(g.pixelPosition,function(e,t){if(t)return t=et(e,n),Qe.test(t)?j(e).position()[n]+"px":t})}),j.each({Height:"height",Width:"width"},function(a,s){j.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,i){j.fn[i]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),o=r||(!0===e||!0===t?"margin":"border");return f(this,function(e,t,n){var r;return y(e)?0===i.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?j.css(e,t,o):j.style(e,t,n,o)},s,n?e:void 0,n)}})}),j.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){j.fn[t]=function(e){return this.on(t,e)}}),j.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),j.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){j.fn[n]=function(e,t){return 0":".","?":"/","|":"\\"},u={option:"alt",command:"meta",return:"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"},c=1;c<20;++c)a[111+c]="f"+c;for(c=0;c<=9;++c)a[c+96]=c;S.prototype.bind=function(e,t,n){return e=e instanceof Array?e:[e],this._bindMultiple.call(this,e,t,n),this},S.prototype.unbind=function(e,t){return this.bind.call(this,e,function(){},t)},S.prototype.trigger=function(e,t){return this._directMap[e+":"+t]&&this._directMap[e+":"+t]({},e),this},S.prototype.reset=function(){return this._callbacks={},this._directMap={},this},S.prototype.stopCallback=function(e,t){return!(-1<(" "+t.className+" ").indexOf(" mousetrap "))&&(!function e(t,n){return null!==t&&t!==o&&(t===n||e(t.parentNode,n))}(t,this.target)&&("INPUT"==t.tagName||"SELECT"==t.tagName||"TEXTAREA"==t.tagName||t.isContentEditable))},S.prototype.handleKey=function(){return this._handleKey.apply(this,arguments)},S.addKeycodes=function(e){for(var t in e)e.hasOwnProperty(t)&&(a[t]=e[t]);i=null},(S.init=function(){var e,t=S(o);for(e in t)"_"!==e.charAt(0)&&(S[e]=function(e){return function(){return t[e].apply(t,arguments)}}(e))})(),r.Mousetrap=S,void 0!==t&&t.exports&&(t.exports=S),"function"==typeof define&&define.amd&&define(function(){return S})}function v(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function b(e){var t;return"keypress"==e.type?(t=String.fromCharCode(e.which),e.shiftKey?t:t.toLowerCase()):a[e.which]||s[e.which]||String.fromCharCode(e.which).toLowerCase()}function x(e){return"shift"==e||"ctrl"==e||"alt"==e||"meta"==e}function f(e,t,n){return n="keypress"==(n=n||(function(){if(!i)for(var e in i={},a)95 0, or `null`');if(U(a,"numericSeparator")&&"boolean"!=typeof a.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var t=a.numericSeparator;if(void 0===n)return"undefined";if(null===n)return"null";if("boolean"==typeof n)return n?"true":"false";if("string"==typeof n)return function e(t,n){if(t.length>n.maxStringLength)return r=t.length-n.maxStringLength,r="... "+r+" more character"+(1"}if(B(n))return 0===n.length?"[]":(l=K(n,y),h&&!function(e){for(var t=0;t "+y(e,n))}),ne("Map",b.call(n),u,h)):function(e){if(w&&e&&"object"==typeof e)try{w.call(e);try{b.call(e)}catch(e){return 1}return e instanceof Set}catch(e){}return}(n)?(c=[],S&&S.call(n,function(e){c.push(y(e,n))}),ne("Set",w.call(n),c,h)):function(e){if(j&&e&&"object"==typeof e)try{j.call(e,j);try{A.call(e,A)}catch(e){return 1}return e instanceof WeakMap}catch(e){}return}(n)?V("WeakMap"):function(e){if(A&&e&&"object"==typeof e)try{A.call(e,A);try{j.call(e,j)}catch(e){return 1}return e instanceof WeakSet}catch(e){}return}(n)?V("WeakSet"):function(e){if(k&&e&&"object"==typeof e)try{return k.call(e),1}catch(e){}return}(n)?V("WeakRef"):"[object Number]"!==z(f=n)||L&&"object"==typeof f&&L in f?function(e){if(e&&"object"==typeof e&&P)try{return P.call(e),1}catch(e){}return}(n)?G(y(P.call(n))):"[object Boolean]"!==z(t=n)||L&&"object"==typeof t&&L in t?"[object String]"!==z(e=n)||L&&"object"==typeof e&&L in e?("[object Date]"!==z(t=n)||L&&"object"==typeof t&&L in t)&&!W(n)?(e=K(n,y),t=I?I(n)===Object.prototype:n instanceof Object||n.constructor===Object,p=n instanceof Object?"":"null prototype",d=!t&&L&&Object(n)===n&&L in n?C.call(z(n),8,-1):p?"Object":"",t=(!t&&"function"==typeof n.constructor&&n.constructor.name?n.constructor.name+" ":"")+(d||p?"["+N.call(O.call([],d||[],p||[]),": ")+"] ":""),0===e.length?t+"{}":h?t+"{"+X(e,h)+"}":t+"{ "+N.call(e,", ")+" }"):String(n):G(y(String(n))):G(Q.call(n)):G(y(Number(n)))};var l=Object.prototype.hasOwnProperty||function(e){return e in this};function U(e,t){return l.call(e,t)}function z(e){return a.call(e)}function ee(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n>6]+c[128|63&l]:l<55296||57344<=l?a+=c[224|l>>12]+c[128|l>>6&63]+c[128|63&l]:(s+=1,l=65536+((1023&l)<<10|1023&i.charCodeAt(s)),a+=c[240|l>>18]+c[128|l>>12&63]+c[128|l>>6&63]+c[128|63&l])}return a},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(y(e)){for(var n=[],r=0;r",'"',"`"," ","\r","\n","\t"]),C=["'"].concat(o),T=["%","/","?",";","#"].concat(C),E=["/","?","#"],O=/^[+a-z0-9A-Z_-]{0,63}$/,N=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,P={javascript:!0,"javascript:":!0},D={javascript:!0,"javascript:":!0},q={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},L=e("qs");function i(e,t,n){var r;return e&&"object"==typeof e&&e instanceof w?e:((r=new w).parse(e,t,n),r)}w.prototype.parse=function(e,t,n){if("string"!=typeof e)throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var r=e.indexOf("?"),r=-1!==r&&r]*)>/i,function(e,t,n,r){return"<"+t+"div"+(t?"":' data-element="'+n+'"')+r+">"}).replace(/<(\/?)(head)([^>]*)>/i,function(e,t,n,r){return"<"+t+"div"+(t?"":' data-element="'+n+'"')+r+">"}).replace(/<(\/?)(body)([^>]*)>/i,function(e,t,n,r){return"<"+t+"div"+(t?"":' data-element="'+n+'"')+r+">"}),c(e)),i=o.find(".book");if(0===i.length)return r=new Error("Invalid gitbook page, redirecting..."),a.reject(r);s&&history.pushState({path:n},null,n),r=(o=c(e)).find("[data-element=head]"),i=o.find(".book"),document.title=r.find("title").text();n=c("head"),n.find("link[rel=prev]").remove(),n.find("link[rel=next]").remove(),n.append(r.find("link[rel=prev]")),n.append(r.find("link[rel=next]")),e=c(".book").attr("class"),o=c(".book-summary").scrollTop();i.toggleClass("with-summary",c(".book").hasClass("with-summary")),c(".book").replaceWith(i),c(".book").attr("class",e),c(".book-summary").scrollTop(o),f.state.$book=c(".book"),w(!u),u&&d(u),a.resolve()}})}).promise();return a.show(n.fail(function(e){console.log(e)}))}location.href=e}function x(){var e=parseInt(c(".body-inner").css("width"),10),t=parseInt(c(".page-wrapper").css("width"),10),e=(c(".navigation-next").css("margin-right",e-t+"px"),l());e.unbind("scroll"),e.scroll(m)}function w(e){var t=c(".book-body").find(".body-inner").find(".page-wrapper"),t=(x(),t&&t[0]&&t[0].focus({preventScroll:!0}),l());e&&t.scrollTop(0),1<(i=c(".book-summary .summary .chapter").filter(function(){var e=c(this).children("a"),t=null;return!!e.length&&(t=e.attr("href").split("#")[0],e=o.resolve(window.location.pathname,t),window.location.pathname==e)})).length?t.scroll(m):r=i.first()}function S(e){var t,n=c(this),r=n.attr("target");(t=e).metaKey||t.altKey||t.ctrlKey||t.shiftKey||0!==e.button||r||(e.stopPropagation(),e.preventDefault(),(t=n.attr("href"))&&b(t,!0))}t.exports={init:function(){c.ajaxSetup({cache:!1}),history.replaceState({path:window.location.href},""),window.onpopstate=function(e){if(null!==e.state)return b(e.state.path,!1)},c(document).on("click",".navigation-prev",S),c(document).on("click",".navigation-next",S),c(document).on("click",".summary [data-path] a",S),c(document).on("click",".page-inner a",S),c(window).resize(x),w(!1)},goNext:function(){var e=c(".navigation-next").attr("href");e&&b(e,!0)},goPrev:function(){var e=c(".navigation-prev").attr("href");e&&b(e,!0)}}},{"./loading":25,"./platform":27,jquery:12,url:21}],27:[function(e,t,n){var r=e("jquery");t.exports={isMobile:function(){return r(document).width()<=600},isSmallScreen:function(){return r(document).width()<=1240}}},{jquery:12}],28:[function(e,t,n){var r=e("jquery"),o=e("./platform"),i=window.gitbook;function a(e,t){null!=i.state&&s()==e||(i.state.$book.toggleClass("without-animation",!(t=null==t?!0:t)),i.state.$book.toggleClass("with-summary",e),i.storage.set("sidebar",s()))}function s(){return i.state.$book.hasClass("with-summary")}t.exports={init:function(){r(document).on("click",".book-summary li.chapter a",function(e){o.isMobile()&&a(!1,!1)})},isOpen:s,toggle:a,filter:function(t){r(".book-summary").find("li").each(function(){var e=r(this).data("path"),e=null==t||-1!==t.indexOf(e);r(this).toggle(e),e&&r(this).parents("li").show()})}}},{"./platform":27,jquery:12}],29:[function(e,t,n){var l=e("jquery"),e=window.gitbook,r=[],o=0;function u(e){e.preventDefault()}function i(e){var t,o,n,r=l(".book-header"),i=r.find("h1"),a="pull-"+e.position,s=l("",{class:"btn",text:e.text?" "+e.text:"","aria-label":e.label,href:"#"});s.click(e.onClick),e.icon&&l("",{class:e.icon}).prependTo(s),(t=e.dropdown?(n=l("
      ",{class:"dropdown "+a+" "+e.className}),s.addClass("toggle-dropdown"),n.append(s),t=e.dropdown,o=l("
      ",{class:"dropdown-menu",html:''}),"string"==typeof t?o.append(t):t.map(function(e){return l.isArray(e)?e:[e]}).forEach(function(e){var n=l("
      ",{class:"buttons"}),r="size-"+e.length;e.forEach(function(e){e=l.extend({text:"",className:"",onClick:u},e||{});var t=l("