a||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","'use strict';\n\nmodule.exports = (string, separator) => {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (separator === '') {\n\t\treturn [string];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [string];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n};\n","'use strict';\nmodule.exports = str => encodeURIComponent(str).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n","/*!\n * cookie\n * Copyright(c) 2012-2014 Roman Shtylman\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module exports.\n * @public\n */\n\nexports.parse = parse;\nexports.serialize = serialize;\n\n/**\n * Module variables.\n * @private\n */\n\nvar decode = decodeURIComponent;\nvar encode = encodeURIComponent;\n\n/**\n * RegExp to match field-content in RFC 7230 sec 3.2\n *\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n * obs-text = %x80-FF\n */\n\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n *\n * @param {string} str\n * @param {object} [options]\n * @return {object}\n * @public\n */\n\nfunction parse(str, options) {\n if (typeof str !== 'string') {\n throw new TypeError('argument str must be a string');\n }\n\n var obj = {}\n var opt = options || {};\n var pairs = str.split(';')\n var dec = opt.decode || decode;\n\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i];\n var index = pair.indexOf('=')\n\n // skip things that don't look like key=value\n if (index < 0) {\n continue;\n }\n\n var key = pair.substring(0, index).trim()\n\n // only assign once\n if (undefined == obj[key]) {\n var val = pair.substring(index + 1, pair.length).trim()\n\n // quoted values\n if (val[0] === '\"') {\n val = val.slice(1, -1)\n }\n\n obj[key] = tryDecode(val, dec);\n }\n }\n\n return obj;\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize the a name value pair into a cookie string suitable for\n * http headers. An optional options object specified cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n *\n * @param {string} name\n * @param {string} val\n * @param {object} [options]\n * @return {string}\n * @public\n */\n\nfunction serialize(name, val, options) {\n var opt = options || {};\n var enc = opt.encode || encode;\n\n if (typeof enc !== 'function') {\n throw new TypeError('option encode is invalid');\n }\n\n if (!fieldContentRegExp.test(name)) {\n throw new TypeError('argument name is invalid');\n }\n\n var value = enc(val);\n\n if (value && !fieldContentRegExp.test(value)) {\n throw new TypeError('argument val is invalid');\n }\n\n var str = name + '=' + value;\n\n if (null != opt.maxAge) {\n var maxAge = opt.maxAge - 0;\n\n if (isNaN(maxAge) || !isFinite(maxAge)) {\n throw new TypeError('option maxAge is invalid')\n }\n\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) {\n str += '; HttpOnly';\n }\n\n if (opt.secure) {\n str += '; Secure';\n }\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string'\n ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n}\n\n/**\n * Try decoding a string using a decoding function.\n *\n * @param {string} str\n * @param {function} decode\n * @private\n */\n\nfunction tryDecode(str, decode) {\n try {\n return decode(str);\n } catch (e) {\n return str;\n }\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}\n\nmodule.exports = _createForOfIteratorHelper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableRest = require(\"./nonIterableRest.js\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\n\nvar iterableToArray = require(\"./iterableToArray.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/nft/\";","////////////////////////////////////////////////////////////////////////////////\n//#region Types and Constants\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * Actions represent the type of change to a location value.\n */\nexport enum Action {\n /**\n * A POP indicates a change to an arbitrary index in the history stack, such\n * as a back or forward navigation. It does not describe the direction of the\n * navigation, only that the current index changed.\n *\n * Note: This is the default action for newly created history objects.\n */\n Pop = \"POP\",\n\n /**\n * A PUSH indicates a new entry being added to the history stack, such as when\n * a link is clicked and a new page loads. When this happens, all subsequent\n * entries in the stack are lost.\n */\n Push = \"PUSH\",\n\n /**\n * A REPLACE indicates the entry at the current index in the history stack\n * being replaced by a new one.\n */\n Replace = \"REPLACE\",\n}\n\n/**\n * The pathname, search, and hash values of a URL.\n */\nexport interface Path {\n /**\n * A URL pathname, beginning with a /.\n */\n pathname: string;\n\n /**\n * A URL search string, beginning with a ?.\n */\n search: string;\n\n /**\n * A URL fragment identifier, beginning with a #.\n */\n hash: string;\n}\n\n/**\n * An entry in a history stack. A location contains information about the\n * URL path, as well as possibly some arbitrary state and a key.\n */\nexport interface Location extends Path {\n /**\n * A value of arbitrary data associated with this location.\n */\n state: any;\n\n /**\n * A unique string associated with this location. May be used to safely store\n * and retrieve data in some other storage API, like `localStorage`.\n *\n * Note: This value is always \"default\" on the initial location.\n */\n key: string;\n}\n\n/**\n * A change to the current location.\n */\nexport interface Update {\n /**\n * The action that triggered the change.\n */\n action: Action;\n\n /**\n * The new location.\n */\n location: Location;\n}\n\n/**\n * A function that receives notifications about location changes.\n */\nexport interface Listener {\n (update: Update): void;\n}\n\n/**\n * Describes a location that is the destination of some navigation, either via\n * `history.push` or `history.replace`. May be either a URL or the pieces of a\n * URL path.\n */\nexport type To = string | Partial 💿 Hey developer 👋 \n You can provide a way better UX than this when your app throws errors by\n providing your own \n (api:() => Promise , success:(res:P) => void, retry?: () => void, error?: (err:ResponseType) => void, loadingText?: string) => void,\n setUserInfo: (info:UserData) => void,\n setAuthInfo: (info:AuthInfoType) => void,\n setDialog: (info:React.ReactElement = {\n api: () => Promise ,\n success: (res: ResponseType) => void,\n retry: () => void,\n retryCnt: number,\n error?: (err: ResponseType) => void,\n loadingText?: string,\n}[]\n\n/** プロバイダーコンポーネントのプロパティ */\ntype ProviderType = {\n children: React.ReactNode,\n}\n/**\n * アプリケーション提供コンポーネント\n * @param props \n * @returns \n */\nconst AppProvider = (props: ProviderType) => {\n const [guid, setGuid, removeGuid] = useCookie (\n api: () => Promise , \n success:(res:P) => void, \n retry?: () => void,\n error?: (err:ResponseType) => void,\n loadingText?: string) {\n waitApi.push({\n api: api,\n success: (res) => success(res as P),\n retry: retry ? retry : () => {},\n retryCnt: 0,\n error: error,\n loadingText: loadingText ? loadingText : \"\",\n });\n setWaitApi([ ...waitApi ]);\n }\n const [ exec, setExec ] = React.useState {\n let headers: HeadersInit = DefaultHeader;\n // フォームデータとして送るかどうか\n let body:any = {...request.request};\n // パラメータからtokenを削除\n if (body.token) {\n delete body.token;\n }\n\n // GETはパラメータをクエリに変換\n let url = (request.method === 'GET')\n ? `${request.url}?${new URLSearchParams(body).toString()}` \n : request.url;\n try {\n var response = await fetch(\n url,\n {\n method: request.method,\n headers: headers,\n body: (request.method === 'GET')? null: JSON.stringify(body),\n credentials: 'include',\n cache: 'no-cache',\n });\n\n if (!response.ok) {\n return Promise.reject({\n httpStatusCode: response.status,\n errorCode: -1,\n errorHttpStatus: true,\n errorMessage: `api: ${request.url} fail.\\n${response.statusText}`\n });\n }\n let responseObject = await response.json();\n let responseData = request.parseResponse(responseObject);\n if (responseData.errorCode) {\n console.log(\"error\", responseData);\n responseData.httpStatusCode = 200;\n responseData.errorHttpStatus = false;\n return Promise.reject(responseData);\n }\n console.log(\"success\", responseData)\n return responseData;\n } catch(e) {\n console.warn(`api request exception occur.\\n${url}`, e);\n return Promise.reject({\n httpStatusCode: -1,\n errorCode: 0,\n errorHttpStatus: false,\n errorMessage: `api: ${request.url} exception occur.`\n });\n }\n }\n // APIが増えたらここを増やす\n return {\n create: async(request:CreateApiRequest) => callapi(new CreateApi(request)),\n login: async(request:LoginApiRequest) => callapi(new LoginApi(request)),\n logout: async(request:LogoutApiRequest) => callapi(new LogoutApi(request)),\n idapLogin: async(request:IDapLoginApiRequest) => callapi(new IDapLoginApi(request)),\n idapLoginCallback: async(request:IDapLoginCallbackApiRequest) => callapi(new IDapLoginCallbackApi(request)),\n userCharaList: async(request:UserCharaListApiRequest) => callapi(new UserCharaListApi(request)),\n userCharaDetail: async(request:UserCharaDetailApiRequest) => callapi(new UserCharaDetailApi(request)),\n userCharaWriteProfile: async(request:UserCharaWriteProfileApiRequest) => callapi(new UserCharaWriteProfileApi(request)),\n userCharaLike: async(request:UserCharaLikeApiRequest) => callapi(new UserCharaLikeApi(request)),\n exchangeCharaList: async(request:ExchangeCharaListApiRequest) => callapi(new ExchangeCharaListApi(request)),\n exchangeCharaPurchase: async(request:ExchangeCharaPurchaseApiRequest) => callapi(new ExchangeCharaPurchaseApi(request)),\n topIndex: async(request:TopIndexApiRequest) => callapi(new TopIndexApi(request)),\n missionList: async(request:MissionListApiRequest) => callapi(new MissionListApi(request)),\n missionReceiveReward: async(request:MissionReceiveRewardApiRequest) => callapi(new MissionReceiveRewardApi(request)),\n activityList: async(request:ActivityListApiRequest) => callapi(new ActivityListApi(request)),\n teamCharaList: async(request:TeamCharacterApiRequest) => callapi(new TeamCharacterApi(request)),\n termsGet: async(request:TermsGetApiRequest) => callapi(new TermsGetApi(request)),\n termsAgree: async(request:TermsAgreeApiRequest) => callapi(new TermsAgreeApi(request)),\n marketTop: async(request:MarketTopApiRequest) => callapi(new MarketTopApi(request)),\n marketExhibit: async(request:MarketExhibitApiRequest) => callapi(new MarketExhibitApi(request)),\n marketNftList: async(request:MarketNftListApiRequest) => callapi(new MarketNftListApi(request)),\n characterRankup: async(request:UserCharacterRankupApiRequest) => callapi(new UserCharacterRankupApi(request)),\n characterGetRankupMaterial: async(request:UserCharacterGetRankupMaterialApiRequest) => callapi(new UserCharacterGetRankupMaterialApi(request)),\n }\n})();\nexport default APIS;\n","import React from 'react';\n\n/** 見出しコンポーネント */\ntype PropsType = {\n text: string,\n level: 0 | 1 | 2 | 3,\n}\nconst Component:React.FCUnhandled Thrown Error!
\n {message}
\n {stack ? {stack}
: null}\n errorElement
props on \n <Route>
\n {props.text}
\n );\n }\n if (props.level === 2) {\n return (\n {props.text}
\n );\n }\n if (props.level === 1) {\n return (\n {props.text}
\n );\n }\n return (\n {props.text}
\n );\n}\nexport default Component;\n","import React from 'react';\nimport {Location, NavigateFunction, useLocation} from 'react-router-dom';\nimport { DialogPropsType, useAppOperationContext } from '../../provider/AppProvider';\nimport APIS from '../../api/Api';\nimport { Response as TermsGetResponse } from '../../api/terms/Get';\nimport { Response as TermAgreeResponse } from '../../api/terms/Agree';\nimport { Response as IDapLoginResponnse } from '../../api/idap/Login';\nimport { Response as LogoutResponse } from '../../api/account/Logout';\nimport { commonApiErrorHandler } from '../../util/Util';\nimport Headline from '../component/Headline';\n\n/** メニュコンポーネント */\ntype PropsType = DialogPropsType & {\n navigate: NavigateFunction,\n location: Location,\n needLogin: boolean,\n}\nconst Component:React.FC
: line;\n });\n}\n/**\n * ライク数を表示する\n * @param cnt ライク数\n */\nexport const showLikeCount = (cnt: number) => {\n // if (cnt >= 1000000) {\n // return `${~~(cnt * 10 / 1000000) / 10}M`; \n // }\n // if (cnt >= 1000) {\n // return `${~~(cnt * 10 / 1000) / 10}K`; \n // }\n return cnt;\n}\n\n/**\n * 共通APIエラー処理(30000番台)\n * @param appOperation アプリケーションコンテキスト\n * @param navigate ナビゲーション\n * @param location ロケーション\n * @returns 共通処理\n */\nexport const commonApiErrorHandler = (\n appOperation: AppOperationContextType, \n navigate: NavigateFunction,\n location: Location,\n needReturnTop: boolean,\n needLogin?: boolean) => {\n return (response: ResponseType) => {\n // 利用規約更新エラーでなければスルー\n if (response.errorCode !== ErrorCode.NOT_AGREE_TERM \n && response.errorCode !== ErrorCode.INIT_AGREE_TERM) {\n return true;\n }\n // ダイアログ非表示\n appOperation.clearDialog();\n if (needReturnTop && location.pathname !== `${process.env.PUBLIC_URL}/`) {\n // トップでなければトップに遷移する\n window.location.replace(`${window.location.origin}${process.env.PUBLIC_URL}`);\n } else {\n // 利用規約を表示する\n appOperation.setDialog(\n
\n );\n }else{\n return (\n \n
\n );\n }\n }\n return (\n