2021-06-24 06:42:03 -07:00
|
|
|
{
|
|
|
|
"name": "uptime-kuma",
|
2023-09-17 12:04:29 -07:00
|
|
|
"version": "1.23.2",
|
2021-07-17 14:45:36 -07:00
|
|
|
"license": "MIT",
|
|
|
|
"repository": {
|
|
|
|
"type": "git",
|
|
|
|
"url": "https://github.com/louislam/uptime-kuma.git"
|
2021-07-17 14:57:48 -07:00
|
|
|
},
|
2021-07-28 09:52:41 -07:00
|
|
|
"engines": {
|
2023-07-16 22:17:00 -07:00
|
|
|
"node": "14 || 16 || 18 || >= 20.4.0"
|
2021-07-28 09:52:41 -07:00
|
|
|
},
|
2021-06-24 06:42:03 -07:00
|
|
|
"scripts": {
|
2022-04-30 21:32:06 -07:00
|
|
|
"install-legacy": "npm install",
|
|
|
|
"update-legacy": "npm update",
|
2021-08-23 08:54:15 -07:00
|
|
|
"lint:js": "eslint --ext \".js,.vue\" --ignore-path .gitignore .",
|
2022-04-17 00:27:35 -07:00
|
|
|
"lint-fix:js": "eslint --ext \".js,.vue\" --fix --ignore-path .gitignore .",
|
2021-08-24 08:38:25 -07:00
|
|
|
"lint:style": "stylelint \"**/*.{vue,css,scss}\" --ignore-path .gitignore",
|
2022-04-25 16:37:20 -07:00
|
|
|
"lint-fix:style": "stylelint \"**/*.{vue,css,scss}\" --fix --ignore-path .gitignore",
|
2021-08-23 08:54:15 -07:00
|
|
|
"lint": "npm run lint:js && npm run lint:style",
|
2022-04-25 11:18:14 -07:00
|
|
|
"dev": "concurrently -k -r \"wait-on tcp:3000 && npm run start-server-dev \" \"npm run start-frontend-dev\"",
|
|
|
|
"start-frontend-dev": "cross-env NODE_ENV=development vite --host --config ./config/vite.config.js",
|
2023-07-16 23:54:40 -07:00
|
|
|
"start-frontend-devcontainer": "cross-env NODE_ENV=development DEVCONTAINER=1 vite --host --config ./config/vite.config.js",
|
2021-07-28 09:36:35 -07:00
|
|
|
"start": "npm run start-server",
|
2021-07-08 23:14:03 -07:00
|
|
|
"start-server": "node server/server.js",
|
2021-09-23 03:45:30 -07:00
|
|
|
"start-server-dev": "cross-env NODE_ENV=development node server/server.js",
|
2021-10-12 11:27:25 -07:00
|
|
|
"build": "vite build --config ./config/vite.config.js",
|
2023-08-31 14:19:21 -07:00
|
|
|
"test": "node test/prepare-test-server.js && npm run test-backend",
|
2021-10-07 05:01:33 -07:00
|
|
|
"test-with-build": "npm run build && npm test",
|
2023-08-31 14:19:21 -07:00
|
|
|
"test-backend": "node test/backend-test-entry.js && npm run jest-backend",
|
|
|
|
"test-backend:14": "cross-env TEST_BACKEND=1 NODE_OPTIONS=\"--experimental-abortcontroller --no-warnings\" node--test test/backend-test",
|
|
|
|
"test-backend:18": "cross-env TEST_BACKEND=1 node --test test/backend-test",
|
2022-10-05 08:45:21 -07:00
|
|
|
"jest-backend": "cross-env TEST_BACKEND=1 jest --runInBand --detectOpenHandles --forceExit --config=./config/jest-backend.config.js",
|
2021-09-21 06:28:45 -07:00
|
|
|
"tsc": "tsc",
|
2021-10-12 11:27:25 -07:00
|
|
|
"vite-preview-dist": "vite preview --host --config ./config/vite.config.js",
|
2023-02-04 02:37:12 -08:00
|
|
|
"build-docker": "npm run build && npm run build-docker-full && npm run build-docker-slim",
|
2023-02-05 01:45:36 -08:00
|
|
|
"build-docker-base": "docker buildx build -f docker/debian-base.dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:base2 --target base2 . --push",
|
|
|
|
"build-docker-base-slim": "docker buildx build -f docker/debian-base.dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:base2-slim --target base2-slim . --push",
|
2023-01-08 21:42:53 -08:00
|
|
|
"build-docker-builder-go": "docker buildx build -f docker/builder-go.dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:builder-go . --push",
|
2023-02-05 01:45:36 -08:00
|
|
|
"build-docker-slim": "node ./extra/env2arg.js docker buildx build -f docker/dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:2-slim -t louislam/uptime-kuma:$VERSION-slim --target release --build-arg BASE_IMAGE=louislam/uptime-kuma:base2-slim . --push",
|
2023-02-04 02:37:12 -08:00
|
|
|
"build-docker-full": "node ./extra/env2arg.js docker buildx build -f docker/dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:2 -t louislam/uptime-kuma:$VERSION --target release . --push",
|
2023-07-30 04:15:09 -07:00
|
|
|
"build-docker-nightly": "node ./extra/test-docker.js && npm run build && docker buildx build -f docker/dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:nightly2 --target nightly . --push",
|
2023-06-30 07:17:07 -07:00
|
|
|
"build-docker-nightly-local": "npm run build && docker build -f docker/dockerfile -t louislam/uptime-kuma:nightly2 --target nightly .",
|
2023-09-01 08:47:36 -07:00
|
|
|
"build-docker-pr-test": "docker buildx build -f docker/dockerfile --platform linux/amd64,linux/arm64 -t louislam/uptime-kuma:pr-test2 --target pr-test2 . --push",
|
2021-12-07 23:35:44 -08:00
|
|
|
"upload-artifacts": "docker buildx build -f docker/dockerfile --platform linux/amd64 -t louislam/uptime-kuma:upload-artifact --build-arg VERSION --build-arg GITHUB_TOKEN --target upload-artifact . --progress plain",
|
2023-09-17 12:04:29 -07:00
|
|
|
"setup": "git checkout 1.23.2 && npm ci --production && npm run download-dist",
|
2021-10-01 23:43:31 -07:00
|
|
|
"download-dist": "node extra/download-dist.js",
|
2021-08-08 22:34:44 -07:00
|
|
|
"mark-as-nightly": "node extra/mark-as-nightly.js",
|
2021-08-10 23:52:25 -07:00
|
|
|
"reset-password": "node extra/reset-password.js",
|
2021-11-18 02:22:03 -08:00
|
|
|
"remove-2fa": "node extra/remove-2fa.js",
|
2021-08-17 08:08:35 -07:00
|
|
|
"compile-install-script": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./extra/compile-install-script.ps1",
|
2023-07-21 01:09:35 -07:00
|
|
|
"test-install-script-rockylinux": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/rockylinux.dockerfile .",
|
2021-08-18 11:04:49 -07:00
|
|
|
"test-install-script-centos7": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/centos7.dockerfile .",
|
2023-07-21 01:09:35 -07:00
|
|
|
"test-install-script-debian": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/debian.dockerfile .",
|
|
|
|
"test-install-script-debian-buster": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/debian-buster.dockerfile .",
|
2021-08-18 11:04:49 -07:00
|
|
|
"test-install-script-ubuntu": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/ubuntu.dockerfile .",
|
2023-07-21 01:09:35 -07:00
|
|
|
"test-install-script-ubuntu1804": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/ubuntu1804.dockerfile .",
|
2021-08-18 11:04:49 -07:00
|
|
|
"test-install-script-ubuntu1604": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/ubuntu1604.dockerfile .",
|
2021-09-01 02:08:27 -07:00
|
|
|
"simple-dns-server": "node extra/simple-dns-server.js",
|
2022-04-16 10:07:54 -07:00
|
|
|
"simple-mqtt-server": "node extra/simple-mqtt-server.js",
|
2023-09-17 12:01:58 -07:00
|
|
|
"simple-mongo": "docker run --rm -p 27017:27017 mongo",
|
2022-10-08 00:01:47 -07:00
|
|
|
"update-language-files": "cd extra/update-language-files && node index.js && cross-env-shell eslint ../../src/languages/$npm_config_language.js --fix",
|
2023-07-03 05:30:21 -07:00
|
|
|
"release-final": "node ./extra/test-docker.js && node extra/update-version.js && npm run build-docker && node ./extra/press-any-key.js && npm run upload-artifacts && node ./extra/update-wiki-version.js",
|
|
|
|
"release-beta": "node ./extra/test-docker.js && node extra/beta/update-version.js && npm run build && node ./extra/env2arg.js docker buildx build -f docker/dockerfile --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:$VERSION -t louislam/uptime-kuma:beta . --target release --push && node ./extra/press-any-key.js && npm run upload-artifacts",
|
2022-06-05 08:43:25 -07:00
|
|
|
"git-remove-tag": "git tag -d",
|
2022-06-15 23:06:34 -07:00
|
|
|
"build-dist-and-restart": "npm run build && npm run start-server-dev",
|
2022-09-09 01:32:23 -07:00
|
|
|
"start-pr-test": "node extra/checkout-pr.js && npm install && npm run dev",
|
2022-06-16 02:28:17 -07:00
|
|
|
"cy:test": "node test/prepare-test-server.js && node server/server.js --port=3002 --data-dir=./data/test/ --e2e",
|
2022-10-04 07:23:57 -07:00
|
|
|
"cy:run": "npx cypress run --browser chrome --headless --config-file ./config/cypress.config.js",
|
2023-01-09 23:18:45 -08:00
|
|
|
"cy:run:unit": "npx cypress run --browser chrome --headless --config-file ./config/cypress.frontend.config.js",
|
2022-12-11 23:42:00 -08:00
|
|
|
"cypress-open": "concurrently -k -r \"node test/prepare-test-server.js && node server/server.js --port=3002 --data-dir=./data/test/\" \"cypress open --config-file ./config/cypress.config.js\"",
|
2023-02-05 01:45:36 -08:00
|
|
|
"build-healthcheck-armv7": "cross-env GOOS=linux GOARCH=arm GOARM=7 go build -x -o ./extra/healthcheck-armv7 ./extra/healthcheck.go",
|
2023-04-06 14:09:13 -07:00
|
|
|
"deploy-demo-server": "node extra/deploy-demo-server.js",
|
2023-06-29 22:38:56 -07:00
|
|
|
"sort-contributors": "node extra/sort-contributors.js",
|
2023-02-05 02:01:54 -08:00
|
|
|
"quick-run-nightly": "docker run --rm --env NODE_ENV=development -p 3001:3001 louislam/uptime-kuma:nightly2",
|
2023-09-21 04:38:51 -07:00
|
|
|
"start-dev-container": "cd docker && docker-compose -f docker-compose-dev.yml up --force-recreate",
|
|
|
|
"rebase-pr-to-1.23.X": "node extra/rebase-pr.js 1.23.X"
|
2021-06-24 06:42:03 -07:00
|
|
|
},
|
|
|
|
"dependencies": {
|
2022-11-24 09:32:33 -08:00
|
|
|
"@grpc/grpc-js": "~1.7.3",
|
2023-07-17 23:36:59 -07:00
|
|
|
"@louislam/ping": "~0.4.4-mod.1",
|
2023-03-27 04:05:18 -07:00
|
|
|
"@louislam/sqlite3": "15.1.6",
|
2021-10-01 01:48:23 -07:00
|
|
|
"args-parser": "~1.3.0",
|
2022-08-23 23:06:29 -07:00
|
|
|
"axios": "~0.27.0",
|
2022-11-24 22:00:33 -08:00
|
|
|
"axios-ntlm": "1.3.0",
|
2022-10-09 01:02:47 -07:00
|
|
|
"badge-maker": "~3.3.1",
|
2021-10-01 01:48:23 -07:00
|
|
|
"bcryptjs": "~2.4.3",
|
2022-07-18 08:32:45 -07:00
|
|
|
"cacheable-lookup": "~6.0.4",
|
2022-10-09 01:02:47 -07:00
|
|
|
"chardet": "~1.4.0",
|
2022-03-11 07:48:35 -08:00
|
|
|
"check-password-strength": "^2.0.5",
|
2022-10-09 01:02:47 -07:00
|
|
|
"cheerio": "~1.0.0-rc.12",
|
|
|
|
"chroma-js": "~2.4.2",
|
2021-10-01 01:48:23 -07:00
|
|
|
"command-exists": "~1.2.9",
|
|
|
|
"compare-versions": "~3.6.0",
|
2022-10-09 01:02:47 -07:00
|
|
|
"compression": "~1.7.4",
|
2023-06-24 21:41:32 -07:00
|
|
|
"croner": "~6.0.5",
|
2022-10-09 01:02:47 -07:00
|
|
|
"dayjs": "~1.11.5",
|
2023-02-01 04:07:08 -08:00
|
|
|
"dotenv": "~16.0.3",
|
2022-03-20 23:31:29 -07:00
|
|
|
"express": "~4.17.3",
|
|
|
|
"express-basic-auth": "~1.2.1",
|
2022-10-09 01:02:47 -07:00
|
|
|
"express-static-gzip": "~2.1.7",
|
2021-10-01 01:48:23 -07:00
|
|
|
"form-data": "~4.0.0",
|
2023-06-24 21:41:32 -07:00
|
|
|
"gamedig": "~4.0.5",
|
2022-03-20 23:31:29 -07:00
|
|
|
"http-graceful-shutdown": "~3.1.7",
|
2022-10-09 01:02:47 -07:00
|
|
|
"http-proxy-agent": "~5.0.0",
|
|
|
|
"https-proxy-agent": "~5.0.1",
|
|
|
|
"iconv-lite": "~0.6.3",
|
2023-07-31 02:24:45 -07:00
|
|
|
"isomorphic-ws": "^5.0.0",
|
2022-10-09 01:02:47 -07:00
|
|
|
"jsesc": "~3.0.2",
|
2023-07-13 08:37:26 -07:00
|
|
|
"jsonata": "^2.0.3",
|
2023-01-03 23:55:36 -08:00
|
|
|
"jsonwebtoken": "~9.0.0",
|
2022-10-09 01:02:47 -07:00
|
|
|
"jwt-decode": "~3.1.2",
|
2023-07-17 01:15:44 -07:00
|
|
|
"kafkajs": "^2.2.4",
|
2023-02-11 06:21:06 -08:00
|
|
|
"knex": "^2.4.2",
|
2022-10-09 01:02:47 -07:00
|
|
|
"limiter": "~2.1.0",
|
2023-04-19 07:28:53 -07:00
|
|
|
"liquidjs": "^10.7.0",
|
2023-09-17 12:01:58 -07:00
|
|
|
"mongodb": "~4.17.1",
|
2022-10-09 01:02:47 -07:00
|
|
|
"mqtt": "~4.3.7",
|
|
|
|
"mssql": "~8.1.4",
|
2022-11-24 09:32:33 -08:00
|
|
|
"mysql2": "~2.3.3",
|
2023-06-24 21:41:32 -07:00
|
|
|
"nanoid": "~3.3.4",
|
2022-03-30 05:08:26 -07:00
|
|
|
"node-cloudflared-tunnel": "~1.0.9",
|
2022-10-09 01:02:47 -07:00
|
|
|
"node-radius-client": "~1.0.0",
|
2021-10-01 01:48:23 -07:00
|
|
|
"nodemailer": "~6.6.5",
|
2023-07-31 02:24:45 -07:00
|
|
|
"nostr-tools": "^1.13.1",
|
2021-10-01 01:48:23 -07:00
|
|
|
"notp": "~2.0.3",
|
2023-08-02 00:40:19 -07:00
|
|
|
"openid-client": "^5.4.2",
|
2021-10-01 01:48:23 -07:00
|
|
|
"password-hash": "~1.2.2",
|
2022-10-09 01:02:47 -07:00
|
|
|
"pg": "~8.8.0",
|
|
|
|
"pg-connection-string": "~2.5.0",
|
2023-06-27 00:54:33 -07:00
|
|
|
"playwright-core": "~1.35.1",
|
2021-10-01 01:48:23 -07:00
|
|
|
"prom-client": "~13.2.0",
|
2022-03-20 23:31:29 -07:00
|
|
|
"prometheus-api-metrics": "~3.2.1",
|
2023-07-08 02:14:41 -07:00
|
|
|
"protobufjs": "~7.2.4",
|
2023-02-13 00:48:05 -08:00
|
|
|
"qs": "~6.10.4",
|
2023-06-24 21:41:32 -07:00
|
|
|
"redbean-node": "~0.3.0",
|
2023-01-05 06:58:24 -08:00
|
|
|
"redis": "~4.5.1",
|
2023-07-16 22:17:00 -07:00
|
|
|
"semver": "~7.5.4",
|
2023-05-08 07:52:57 -07:00
|
|
|
"socket.io": "~4.6.1",
|
|
|
|
"socket.io-client": "~4.6.1",
|
2022-07-18 08:27:05 -07:00
|
|
|
"socks-proxy-agent": "6.1.1",
|
2022-10-09 01:02:47 -07:00
|
|
|
"tar": "~6.1.11",
|
2021-10-01 01:48:23 -07:00
|
|
|
"tcp-ping": "~0.1.1",
|
2023-07-31 02:24:45 -07:00
|
|
|
"thirty-two": "~1.0.2",
|
|
|
|
"ws": "^8.13.0"
|
2021-06-24 06:42:03 -07:00
|
|
|
},
|
|
|
|
"devDependencies": {
|
2022-04-01 20:34:00 -07:00
|
|
|
"@actions/github": "~5.0.1",
|
2023-07-08 02:14:41 -07:00
|
|
|
"@babel/eslint-parser": "^7.22.7",
|
2021-10-08 00:11:50 -07:00
|
|
|
"@babel/preset-env": "^7.15.8",
|
2022-07-03 12:54:56 -07:00
|
|
|
"@fortawesome/fontawesome-svg-core": "~1.2.36",
|
|
|
|
"@fortawesome/free-regular-svg-icons": "~5.15.4",
|
|
|
|
"@fortawesome/free-solid-svg-icons": "~5.15.4",
|
|
|
|
"@fortawesome/vue-fontawesome": "~3.0.0-5",
|
2022-07-03 12:59:20 -07:00
|
|
|
"@popperjs/core": "~2.10.2",
|
2022-03-20 23:31:29 -07:00
|
|
|
"@types/bootstrap": "~5.1.9",
|
2023-07-08 02:14:41 -07:00
|
|
|
"@vitejs/plugin-legacy": "~4.1.0",
|
|
|
|
"@vitejs/plugin-vue": "~4.2.3",
|
|
|
|
"@vue/compiler-sfc": "~3.3.4",
|
2022-10-09 05:59:58 -07:00
|
|
|
"@vuepic/vue-datepicker": "~3.4.8",
|
2022-04-16 10:07:54 -07:00
|
|
|
"aedes": "^0.46.3",
|
2022-07-03 12:54:56 -07:00
|
|
|
"bootstrap": "5.1.3",
|
2023-03-01 12:47:51 -08:00
|
|
|
"chart.js": "~4.2.1",
|
|
|
|
"chartjs-adapter-dayjs-4": "~1.0.4",
|
2022-04-25 11:18:14 -07:00
|
|
|
"concurrently": "^7.1.0",
|
2022-12-04 05:41:08 -08:00
|
|
|
"core-js": "~3.26.1",
|
2023-03-31 05:25:37 -07:00
|
|
|
"cronstrue": "~2.24.0",
|
2021-10-01 01:48:23 -07:00
|
|
|
"cross-env": "~7.0.3",
|
2023-09-17 12:01:58 -07:00
|
|
|
"cypress": "^13.2.0",
|
2022-06-15 23:06:34 -07:00
|
|
|
"delay": "^5.0.0",
|
2021-10-01 01:48:23 -07:00
|
|
|
"dns2": "~2.0.1",
|
2023-01-31 23:51:33 -08:00
|
|
|
"dompurify": "~2.4.3",
|
2023-09-17 13:09:17 -07:00
|
|
|
"eslint": "~8.14.0",
|
2023-09-17 13:05:09 -07:00
|
|
|
"eslint-plugin-jsdoc": "~46.4.6",
|
2023-09-17 13:09:17 -07:00
|
|
|
"eslint-plugin-vue": "~8.7.1",
|
2022-10-09 01:02:47 -07:00
|
|
|
"favico.js": "~0.3.10",
|
2023-07-08 02:14:41 -07:00
|
|
|
"jest": "~29.6.1",
|
2023-02-11 06:21:06 -08:00
|
|
|
"marked": "~4.2.5",
|
2023-07-08 02:14:41 -07:00
|
|
|
"node-ssh": "~13.1.0",
|
2022-09-13 00:17:39 -07:00
|
|
|
"postcss-html": "~1.5.0",
|
|
|
|
"postcss-rtlcss": "~3.7.2",
|
|
|
|
"postcss-scss": "~4.0.4",
|
2022-10-09 01:02:47 -07:00
|
|
|
"prismjs": "~1.29.0",
|
2022-07-03 12:54:56 -07:00
|
|
|
"qrcode": "~1.5.0",
|
2022-06-05 08:43:25 -07:00
|
|
|
"rollup-plugin-visualizer": "^5.6.0",
|
2021-10-01 01:48:23 -07:00
|
|
|
"sass": "~1.42.1",
|
2023-07-08 02:14:41 -07:00
|
|
|
"stylelint": "^15.10.1",
|
2022-04-25 16:26:57 -07:00
|
|
|
"stylelint-config-standard": "~25.0.0",
|
2022-10-09 01:02:47 -07:00
|
|
|
"terser": "~5.15.0",
|
2023-08-31 14:19:21 -07:00
|
|
|
"test": "~3.3.0",
|
2022-07-03 12:54:56 -07:00
|
|
|
"timezones-list": "~3.0.1",
|
2021-11-22 21:32:24 -08:00
|
|
|
"typescript": "~4.4.4",
|
2022-07-03 12:54:56 -07:00
|
|
|
"v-pagination-3": "~0.1.7",
|
2023-07-08 02:14:41 -07:00
|
|
|
"vite": "~4.4.1",
|
2023-06-28 15:50:55 -07:00
|
|
|
"vite-plugin-commonjs": "^0.8.0",
|
2022-06-05 08:43:25 -07:00
|
|
|
"vite-plugin-compression": "^0.5.1",
|
2023-07-08 02:14:41 -07:00
|
|
|
"vue": "~3.3.4",
|
2023-03-01 12:47:51 -08:00
|
|
|
"vue-chartjs": "~5.2.0",
|
2022-07-03 12:54:56 -07:00
|
|
|
"vue-confirm-dialog": "~1.0.2",
|
|
|
|
"vue-contenteditable": "~3.0.4",
|
2022-10-10 01:23:32 -07:00
|
|
|
"vue-i18n": "~9.2.2",
|
2022-07-03 12:54:56 -07:00
|
|
|
"vue-image-crop-upload": "~3.0.3",
|
|
|
|
"vue-multiselect": "~3.0.0-alpha.2",
|
2022-10-09 01:02:47 -07:00
|
|
|
"vue-prism-editor": "~2.0.0-alpha.2",
|
2022-07-03 12:54:56 -07:00
|
|
|
"vue-qrcode": "~1.0.0",
|
|
|
|
"vue-router": "~4.0.14",
|
|
|
|
"vue-toastification": "~2.0.0-rc.5",
|
|
|
|
"vuedraggable": "~4.1.0",
|
2023-05-24 22:41:35 -07:00
|
|
|
"wait-on": "^6.0.1",
|
|
|
|
"whatwg-url": "~12.0.1"
|
2021-06-24 06:42:03 -07:00
|
|
|
}
|
2021-12-02 09:31:19 -08:00
|
|
|
}
|