Merge pull request #5341 from pixelfed/staging

v0.12.4
pull/5584/head v0.12.4
daniel 1 year ago committed by GitHub
commit 65dd601a02
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -1,6 +1,9 @@
# Release Notes
## [Unreleased](https://github.com/pixelfed/pixelfed/compare/v0.12.3...dev)
- ([](https://github.com/pixelfed/pixelfed/commit/))
## [v0.12.4 (2024-11-08)](https://github.com/pixelfed/pixelfed/compare/v0.12.4...dev)
### Added
- Implement Admin Domain Blocks API (Mastodon API Compatible) [ThisIsMissEm](https://github.com/ThisIsMissEm) ([#5021](https://github.com/pixelfed/pixelfed/pull/5021))
@ -36,7 +39,7 @@
- Update config, allow Beagle discover service to be disabled ([de4ce3c8](https://github.com/pixelfed/pixelfed/commit/de4ce3c8))
- Update ApiV1Dot1Controller, allow upto 5 similar push tokens ([7820b506](https://github.com/pixelfed/pixelfed/commit/7820b506))
- Update AdminReports, add missing click handler. Fixes #5332 ([fe48b8ad](https://github.com/pixelfed/pixelfed/commit/fe48b8ad))
- ([](https://github.com/pixelfed/pixelfed/commit/))
- Improve media filtering by using OffscreenCanvas, if supported ([aea5392](https://github.com/pixelfed/pixelfed/commit/aea5392))
## [v0.12.3 (2024-07-01)](https://github.com/pixelfed/pixelfed/compare/v0.12.2...v0.12.3)

@ -194,6 +194,7 @@ FROM --platform=${BUILDARCH} node:lts AS frontend-build
ARG BUILDARCH
ARG BUILD_FRONTEND=0
ARG RUNTIME_UID
ARG RUNTIME_GID
ARG NODE_ENV=production
ENV NODE_ENV=$NODE_ENV
@ -256,17 +257,26 @@ COPY --link --from=composer-image /usr/bin/composer /usr/bin/composer
#! Changing user to runtime user
USER ${RUNTIME_UID}:${RUNTIME_GID}
# Install composer dependencies
# NOTE: we skip the autoloader generation here since we don't have all files avaliable (yet)
RUN --mount=type=cache,id=pixelfed-composer-${PHP_VERSION},sharing=locked,target=/cache/composer \
RUN --mount=type=cache,id=pixelfed-composer-${PHP_VERSION},sharing=locked,uid=${RUNTIME_UID},gid=${RUNTIME_GID},target=/cache/composer \
--mount=type=bind,source=composer.json,target=/var/www/composer.json \
--mount=type=bind,source=composer.lock,target=/var/www/composer.lock \
set -ex \
&& composer install --prefer-dist --no-autoloader --ignore-platform-reqs
&& composer install --prefer-dist --no-autoloader --ignore-platform-reqs --no-scripts
# Copy all other files over
COPY --chown=${RUNTIME_UID}:${RUNTIME_GID} . /var/www/
# Generate optimized autoloader now that we have all files around
RUN set -ex \
&& ENABLE_CONFIG_CACHE=false composer dump-autoload --optimize
# Now we can run the post-install scripts
RUN set -ex \
&& composer run-script post-update-cmd
#######################################################
# Runtime: base
#######################################################
@ -286,13 +296,6 @@ COPY --link --from=composer-image /usr/bin/composer /usr/bin/composer
COPY --link --from=composer-and-src --chown=${RUNTIME_UID}:${RUNTIME_GID} /var/www /var/www
COPY --link --from=frontend-build --chown=${RUNTIME_UID}:${RUNTIME_GID} /var/www/public /var/www/public
#! Changing user to runtime user
USER ${RUNTIME_UID}:${RUNTIME_GID}
# Generate optimized autoloader now that we have all files around
RUN set -ex \
&& ENABLE_CONFIG_CACHE=false composer dump-autoload --optimize
USER root
# for detail why storage is copied this way, pls refer to https://github.com/pixelfed/pixelfed/pull/2137#discussion_r434468862

46
composer.lock generated

@ -62,16 +62,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.325.3",
"version": "3.325.5",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "de0b289c7260fb19301ffa2eb724de2076daad74"
"reference": "195d003c902a741de53008c839cbcebddbe1f326"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/de0b289c7260fb19301ffa2eb724de2076daad74",
"reference": "de0b289c7260fb19301ffa2eb724de2076daad74",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/195d003c902a741de53008c839cbcebddbe1f326",
"reference": "195d003c902a741de53008c839cbcebddbe1f326",
"shasum": ""
},
"require": {
@ -154,9 +154,9 @@
"support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.325.3"
"source": "https://github.com/aws/aws-sdk-php/tree/3.325.5"
},
"time": "2024-11-06T19:05:22+00:00"
"time": "2024-11-08T19:12:57+00:00"
},
{
"name": "bacon/bacon-qr-code",
@ -3113,16 +3113,16 @@
},
{
"name": "lcobucci/jwt",
"version": "5.4.1",
"version": "5.4.2",
"source": {
"type": "git",
"url": "https://github.com/lcobucci/jwt.git",
"reference": "848815d2287abd5d3c285482f8e1f501b289a2e7"
"reference": "ea1ce71cbf9741e445a5914e2f67cdbb484ff712"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/lcobucci/jwt/zipball/848815d2287abd5d3c285482f8e1f501b289a2e7",
"reference": "848815d2287abd5d3c285482f8e1f501b289a2e7",
"url": "https://api.github.com/repos/lcobucci/jwt/zipball/ea1ce71cbf9741e445a5914e2f67cdbb484ff712",
"reference": "ea1ce71cbf9741e445a5914e2f67cdbb484ff712",
"shasum": ""
},
"require": {
@ -3170,7 +3170,7 @@
],
"support": {
"issues": "https://github.com/lcobucci/jwt/issues",
"source": "https://github.com/lcobucci/jwt/tree/5.4.1"
"source": "https://github.com/lcobucci/jwt/tree/5.4.2"
},
"funding": [
{
@ -3182,7 +3182,7 @@
"type": "patreon"
}
],
"time": "2024-11-06T06:16:04+00:00"
"time": "2024-11-07T12:54:35+00:00"
},
{
"name": "league/commonmark",
@ -4296,16 +4296,16 @@
},
{
"name": "nesbot/carbon",
"version": "3.8.1",
"version": "3.8.2",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
"reference": "10ac0aa86b8062219ce21e8189123d611ca3ecd9"
"reference": "e1268cdbc486d97ce23fef2c666dc3c6b6de9947"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/10ac0aa86b8062219ce21e8189123d611ca3ecd9",
"reference": "10ac0aa86b8062219ce21e8189123d611ca3ecd9",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/e1268cdbc486d97ce23fef2c666dc3c6b6de9947",
"reference": "e1268cdbc486d97ce23fef2c666dc3c6b6de9947",
"shasum": ""
},
"require": {
@ -4398,7 +4398,7 @@
"type": "tidelift"
}
],
"time": "2024-11-03T16:02:24+00:00"
"time": "2024-11-07T17:46:48+00:00"
},
{
"name": "nette/schema",
@ -10918,16 +10918,16 @@
},
{
"name": "myclabs/deep-copy",
"version": "1.12.0",
"version": "1.12.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
"reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c"
"reference": "123267b2c49fbf30d78a7b2d333f6be754b94845"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
"reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
"url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/123267b2c49fbf30d78a7b2d333f6be754b94845",
"reference": "123267b2c49fbf30d78a7b2d333f6be754b94845",
"shasum": ""
},
"require": {
@ -10966,7 +10966,7 @@
],
"support": {
"issues": "https://github.com/myclabs/DeepCopy/issues",
"source": "https://github.com/myclabs/DeepCopy/tree/1.12.0"
"source": "https://github.com/myclabs/DeepCopy/tree/1.12.1"
},
"funding": [
{
@ -10974,7 +10974,7 @@
"type": "tidelift"
}
],
"time": "2024-06-12T14:39:25+00:00"
"time": "2024-11-08T17:47:46+00:00"
},
{
"name": "nunomaduro/collision",

@ -23,7 +23,7 @@ return [
| This value is the version of your Pixelfed instance.
|
*/
'version' => '0.12.3',
'version' => '0.12.4',
/*
|--------------------------------------------------------------------------

2069
package-lock.json generated

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */

@ -1 +1 @@
(()=>{"use strict";var e,r,o,a={},t={};function n(e){var r=t[e];if(void 0!==r)return r.exports;var o=t[e]={id:e,loaded:!1,exports:{}};return a[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.m=a,e=[],n.O=(r,o,a,t)=>{if(!o){var d=1/0;for(u=0;u<e.length;u++){for(var[o,a,t]=e[u],s=!0,i=0;i<o.length;i++)(!1&t||d>=t)&&Object.keys(n.O).every((e=>n.O[e](o[i])))?o.splice(i--,1):(s=!1,t<d&&(d=t));if(s){e.splice(u--,1);var c=a();void 0!==c&&(r=c)}}return r}t=t||0;for(var u=e.length;u>0&&e[u-1][2]>t;u--)e[u]=e[u-1];e[u]=[o,a,t]},n.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return n.d(r,{a:r}),r},n.d=(e,r)=>{for(var o in r)n.o(r,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce(((r,o)=>(n.f[o](e,r),r)),[])),n.u=e=>"js/"+{529:"groups-page",1179:"daci.chunk",1240:"discover~myhashtags.chunk",1645:"profile~following.bundle",2156:"dms.chunk",2822:"group.create",2966:"discover~hashtag.bundle",3688:"discover~serverfeed.chunk",4951:"home.chunk",6250:"discover~settings.chunk",6438:"groups-page-media",6535:"discover.chunk",6740:"discover~memories.chunk",6791:"groups-page-members",7206:"groups-page-topics",7342:"groups-post",7399:"dms~message.chunk",7413:"error404.bundle",7521:"discover~findfriends.chunk",7744:"notifications.chunk",8087:"profile.chunk",8119:"i18n.bundle",8257:"groups-page-about",8408:"post.chunk",8977:"profile~followers.bundle",9124:"compose.chunk",9231:"groups-profile",9919:"changelog.bundle"}[e]+"."+{529:"acb1312c8fa28603",1179:"54a46f9d3a646bd2",1240:"107f22c29aa04b5b",1645:"7a592645bb9eb11f",2156:"49ae3599d4dba309",2822:"e6f580f22769b687",2966:"94de7a1013d118bf",3688:"d7c80d1f408ae4b8",4951:"b4d8cc40a68920c1",6250:"7576e6cfccedc316",6438:"660d310e20bb9451",6535:"b5e4952e4d62342b",6740:"71f40101e955ab62",6791:"9e6e807b47585ba8",7206:"d51e24af2273e3c4",7342:"89ef401bc3e4338f",7399:"61293d7251878a18",7413:"9200c0b8734654fb",7521:"e4652b4bbc15fb50",7744:"f04bf557f846d93a",8087:"5c727a8a961cd959",8119:"873216ad86c80486",8257:"f104deafd36d2813",8408:"75dacb90af9d0e71",8977:"fa171ea239061d55",9124:"34ebded0861594ef",9231:"2d5b53d784146dd1",9919:"da47c74f7034447a"}[e]+".js",n.miniCssF=e=>({2305:"css/portfolio",2540:"css/landing",3364:"css/admin",4370:"css/profile",6952:"css/appdark",8252:"css/app",8759:"css/spa"}[e]+".css"),n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r={},o="pixelfed:",n.l=(e,a,t,d)=>{if(r[e])r[e].push(a);else{var s,i;if(void 0!==t)for(var c=document.getElementsByTagName("script"),u=0;u<c.length;u++){var l=c[u];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+t){s=l;break}}s||(i=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,n.nc&&s.setAttribute("nonce",n.nc),s.setAttribute("data-webpack",o+t),s.src=e),r[e]=[a];var f=(o,a)=>{s.onerror=s.onload=null,clearTimeout(p);var t=r[e];if(delete r[e],s.parentNode&&s.parentNode.removeChild(s),t&&t.forEach((e=>e(a))),o)return o(a)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),i&&document.head.appendChild(s)}},n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),n.p="/",(()=>{var e={461:0,6952:0,8252:0,2305:0,3364:0,2540:0,4370:0,8759:0};n.f.j=(r,o)=>{var a=n.o(e,r)?e[r]:void 0;if(0!==a)if(a)o.push(a[2]);else if(/^((69|82)52|2305|2540|3364|4370|461|8759)$/.test(r))e[r]=0;else{var t=new Promise(((o,t)=>a=e[r]=[o,t]));o.push(a[2]=t);var d=n.p+n.u(r),s=new Error;n.l(d,(o=>{if(n.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var t=o&&("load"===o.type?"missing":o.type),d=o&&o.target&&o.target.src;s.message="Loading chunk "+r+" failed.\n("+t+": "+d+")",s.name="ChunkLoadError",s.type=t,s.request=d,a[1](s)}}),"chunk-"+r,r)}},n.O.j=r=>0===e[r];var r=(r,o)=>{var a,t,[d,s,i]=o,c=0;if(d.some((r=>0!==e[r]))){for(a in s)n.o(s,a)&&(n.m[a]=s[a]);if(i)var u=i(n)}for(r&&r(o);c<d.length;c++)t=d[c],n.o(e,t)&&e[t]&&e[t][0](),e[t]=0;return n.O(u)},o=self.webpackChunkpixelfed=self.webpackChunkpixelfed||[];o.forEach(r.bind(null,0)),o.push=r.bind(null,o.push.bind(o))})(),n.nc=void 0})();
(()=>{"use strict";var e,r,o,a={},t={};function n(e){var r=t[e];if(void 0!==r)return r.exports;var o=t[e]={id:e,loaded:!1,exports:{}};return a[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.m=a,e=[],n.O=(r,o,a,t)=>{if(!o){var c=1/0;for(u=0;u<e.length;u++){for(var[o,a,t]=e[u],d=!0,s=0;s<o.length;s++)(!1&t||c>=t)&&Object.keys(n.O).every((e=>n.O[e](o[s])))?o.splice(s--,1):(d=!1,t<c&&(c=t));if(d){e.splice(u--,1);var i=a();void 0!==i&&(r=i)}}return r}t=t||0;for(var u=e.length;u>0&&e[u-1][2]>t;u--)e[u]=e[u-1];e[u]=[o,a,t]},n.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return n.d(r,{a:r}),r},n.d=(e,r)=>{for(var o in r)n.o(r,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce(((r,o)=>(n.f[o](e,r),r)),[])),n.u=e=>"js/"+{529:"groups-page",1179:"daci.chunk",1240:"discover~myhashtags.chunk",1645:"profile~following.bundle",2156:"dms.chunk",2822:"group.create",2966:"discover~hashtag.bundle",3688:"discover~serverfeed.chunk",4951:"home.chunk",6250:"discover~settings.chunk",6438:"groups-page-media",6535:"discover.chunk",6740:"discover~memories.chunk",6791:"groups-page-members",7206:"groups-page-topics",7342:"groups-post",7399:"dms~message.chunk",7413:"error404.bundle",7521:"discover~findfriends.chunk",7744:"notifications.chunk",8087:"profile.chunk",8119:"i18n.bundle",8257:"groups-page-about",8408:"post.chunk",8977:"profile~followers.bundle",9124:"compose.chunk",9231:"groups-profile",9919:"changelog.bundle"}[e]+"."+{529:"53eccead9512c61f",1179:"3ed914c15dec4ff4",1240:"67fd16950ee21ad8",1645:"4ac5466dca6ca1c4",2156:"b7e970fb49da0199",2822:"0d645a1de271e28d",2966:"db1d86f9e9dcb79a",3688:"93bc564867eaa7c3",4951:"c362371940daf318",6250:"950c11c918a541b0",6438:"f611a51e684c48ef",6535:"2986d7e977f5188a",6740:"3b45432a80b08e9b",6791:"bfdefdd66058e838",7206:"431ebaf843ca9b16",7342:"639cb121bdc6f4a7",7399:"011f31232754f650",7413:"ad885ef6f9b2c101",7521:"84758c764668a02c",7744:"8c41265737b2568a",8087:"9e77e21e157a47c5",8119:"882da44b752e4e1a",8257:"06576420562628e3",8408:"5f457aeaa4ae598c",8977:"f26ee6ed6ced9aa7",9124:"e1f297b242137d23",9231:"3b11ffa46ae76520",9919:"7fc2ee6c4475458c"}[e]+".js",n.miniCssF=e=>({2305:"css/portfolio",2540:"css/landing",3364:"css/admin",4370:"css/profile",6952:"css/appdark",8252:"css/app",8759:"css/spa"}[e]+".css"),n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r={},o="pixelfed:",n.l=(e,a,t,c)=>{if(r[e])r[e].push(a);else{var d,s;if(void 0!==t)for(var i=document.getElementsByTagName("script"),u=0;u<i.length;u++){var l=i[u];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+t){d=l;break}}d||(s=!0,(d=document.createElement("script")).charset="utf-8",d.timeout=120,n.nc&&d.setAttribute("nonce",n.nc),d.setAttribute("data-webpack",o+t),d.src=e),r[e]=[a];var f=(o,a)=>{d.onerror=d.onload=null,clearTimeout(p);var t=r[e];if(delete r[e],d.parentNode&&d.parentNode.removeChild(d),t&&t.forEach((e=>e(a))),o)return o(a)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:d}),12e4);d.onerror=f.bind(null,d.onerror),d.onload=f.bind(null,d.onload),s&&document.head.appendChild(d)}},n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),n.p="/",(()=>{var e={461:0,6952:0,8252:0,2305:0,3364:0,2540:0,4370:0,8759:0};n.f.j=(r,o)=>{var a=n.o(e,r)?e[r]:void 0;if(0!==a)if(a)o.push(a[2]);else if(/^((69|82)52|2305|2540|3364|4370|461|8759)$/.test(r))e[r]=0;else{var t=new Promise(((o,t)=>a=e[r]=[o,t]));o.push(a[2]=t);var c=n.p+n.u(r),d=new Error;n.l(c,(o=>{if(n.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var t=o&&("load"===o.type?"missing":o.type),c=o&&o.target&&o.target.src;d.message="Loading chunk "+r+" failed.\n("+t+": "+c+")",d.name="ChunkLoadError",d.type=t,d.request=c,a[1](d)}}),"chunk-"+r,r)}},n.O.j=r=>0===e[r];var r=(r,o)=>{var a,t,[c,d,s]=o,i=0;if(c.some((r=>0!==e[r]))){for(a in d)n.o(d,a)&&(n.m[a]=d[a]);if(s)var u=s(n)}for(r&&r(o);i<c.length;i++)t=c[i],n.o(e,t)&&e[t]&&e[t][0](),e[t]=0;return n.O(u)},o=self.webpackChunkpixelfed=self.webpackChunkpixelfed||[];o.forEach(r.bind(null,0)),o.push=r.bind(null,o.push.bind(o))})(),n.nc=void 0})();

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */

File diff suppressed because one or more lines are too long

@ -6,7 +6,7 @@
"/js/profile.js": "/js/profile.js?id=c207130ea4ca11e2c38cb5c95c362bf9",
"/js/status.js": "/js/status.js?id=ab8db98a6f8c88d0aa44761303835c00",
"/js/timeline.js": "/js/timeline.js?id=fe60e818a87fc50a0cea15c6937f15a7",
"/js/compose.js": "/js/compose.js?id=5d33cb0795e845a82e6b33d18d6fd0a5",
"/js/compose.js": "/js/compose.js?id=7b916f1a8cc374daccbd6bf14acd3196",
"/js/compose-classic.js": "/js/compose-classic.js?id=25300467f8cc5d0cf48353ad2a15f9b6",
"/js/search.js": "/js/search.js?id=63cf7a7bafc600cdfe5d7bdebfaa76f7",
"/js/developers.js": "/js/developers.js?id=4de04f01dea35c4958fb820647e6496d",
@ -27,35 +27,35 @@
"/js/groups.js": "/js/groups.js?id=e70f0350caf2e1d67b0b78a9b3c822c2",
"/js/group-status.js": "/js/group-status.js?id=23571c70f2794de54541e127ae1f3369",
"/js/group-topic-feed.js": "/js/group-topic-feed.js?id=16fa7d88f104424ad33c244af6cf5d77",
"/js/manifest.js": "/js/manifest.js?id=1b590f383ccf6a08156df03ec317d193",
"/js/home.chunk.b4d8cc40a68920c1.js": "/js/home.chunk.b4d8cc40a68920c1.js?id=bca9e363dcd13381139370961128f74a",
"/js/compose.chunk.34ebded0861594ef.js": "/js/compose.chunk.34ebded0861594ef.js?id=b3423e85ceaa84d05021458186f5d73a",
"/js/post.chunk.75dacb90af9d0e71.js": "/js/post.chunk.75dacb90af9d0e71.js?id=d92917c5e592daf378e79aa8b0a9d8c4",
"/js/profile.chunk.5c727a8a961cd959.js": "/js/profile.chunk.5c727a8a961cd959.js?id=25567578b59cb051a454fedc84f8a34d",
"/js/discover~memories.chunk.71f40101e955ab62.js": "/js/discover~memories.chunk.71f40101e955ab62.js?id=fe3102ee61b6d8bf9fdf9d28b80d1ae9",
"/js/discover~myhashtags.chunk.107f22c29aa04b5b.js": "/js/discover~myhashtags.chunk.107f22c29aa04b5b.js?id=70db27f673c81eeb7e807d15c3c3ec9e",
"/js/daci.chunk.54a46f9d3a646bd2.js": "/js/daci.chunk.54a46f9d3a646bd2.js?id=f7aeb4773ef4da06a1f15be07708eeae",
"/js/discover~findfriends.chunk.e4652b4bbc15fb50.js": "/js/discover~findfriends.chunk.e4652b4bbc15fb50.js?id=3fd0372ff1d6b19c723f67a74961a2c8",
"/js/discover~serverfeed.chunk.d7c80d1f408ae4b8.js": "/js/discover~serverfeed.chunk.d7c80d1f408ae4b8.js?id=27a956f91daadc35a5f1a937fff58ad2",
"/js/discover~settings.chunk.7576e6cfccedc316.js": "/js/discover~settings.chunk.7576e6cfccedc316.js?id=bdbe504c5b3be3a473c436e2c2bba750",
"/js/discover.chunk.b5e4952e4d62342b.js": "/js/discover.chunk.b5e4952e4d62342b.js?id=f51e4da437a46aaf5d0540641ccbc88b",
"/js/notifications.chunk.f04bf557f846d93a.js": "/js/notifications.chunk.f04bf557f846d93a.js?id=3c71c0134bcc32bf7f91f82f1e5fa27f",
"/js/dms.chunk.49ae3599d4dba309.js": "/js/dms.chunk.49ae3599d4dba309.js?id=1f8c5e7e35e30e73e070f82de123b5d8",
"/js/dms~message.chunk.61293d7251878a18.js": "/js/dms~message.chunk.61293d7251878a18.js?id=2eacf2e94ec7fb418f3e6d4276971732",
"/js/profile~followers.bundle.fa171ea239061d55.js": "/js/profile~followers.bundle.fa171ea239061d55.js?id=ae2d400c3bcf480686ecbf90ef4a66ed",
"/js/profile~following.bundle.7a592645bb9eb11f.js": "/js/profile~following.bundle.7a592645bb9eb11f.js?id=3956330a33e993d1c7259b679f5953b5",
"/js/discover~hashtag.bundle.94de7a1013d118bf.js": "/js/discover~hashtag.bundle.94de7a1013d118bf.js?id=c9aa656e99c12e264012d0089909f7c4",
"/js/error404.bundle.9200c0b8734654fb.js": "/js/error404.bundle.9200c0b8734654fb.js?id=5ed4f77d9dce508677d90200fb9e81cd",
"/js/i18n.bundle.873216ad86c80486.js": "/js/i18n.bundle.873216ad86c80486.js?id=81b682d300258e41f2fd575562119e95",
"/js/changelog.bundle.da47c74f7034447a.js": "/js/changelog.bundle.da47c74f7034447a.js?id=8445c18302c31c1d7d974e08db9b6a6d",
"/js/group.create.e6f580f22769b687.js": "/js/group.create.e6f580f22769b687.js?id=40ea73e52db6d7d395505264d3d178c8",
"/js/groups-post.89ef401bc3e4338f.js": "/js/groups-post.89ef401bc3e4338f.js?id=a0288be80a4d17f5c966c71d6253f663",
"/js/groups-profile.2d5b53d784146dd1.js": "/js/groups-profile.2d5b53d784146dd1.js?id=399deea282e639d488852a4f2a7a6d8b",
"/js/groups-page-about.f104deafd36d2813.js": "/js/groups-page-about.f104deafd36d2813.js?id=d236c4c5ded0ab16516355ad812f43e0",
"/js/groups-page-topics.d51e24af2273e3c4.js": "/js/groups-page-topics.d51e24af2273e3c4.js?id=df82af62cf62ce5df4467ced6b5b0f6b",
"/js/groups-page-members.9e6e807b47585ba8.js": "/js/groups-page-members.9e6e807b47585ba8.js?id=66283477f45f98715dabab228b58a70b",
"/js/groups-page-media.660d310e20bb9451.js": "/js/groups-page-media.660d310e20bb9451.js?id=63ced28b7fed630b5557ed31936a5daa",
"/js/groups-page.acb1312c8fa28603.js": "/js/groups-page.acb1312c8fa28603.js?id=ca5e177a511b14de259003ad2f96ef47",
"/js/manifest.js": "/js/manifest.js?id=0715d948c435bcee23836df863ae8a84",
"/js/home.chunk.c362371940daf318.js": "/js/home.chunk.c362371940daf318.js?id=ab25b048bda3b8cbc9592771386361da",
"/js/compose.chunk.e1f297b242137d23.js": "/js/compose.chunk.e1f297b242137d23.js?id=e58511323373babce3076f4befd901ec",
"/js/post.chunk.5f457aeaa4ae598c.js": "/js/post.chunk.5f457aeaa4ae598c.js?id=e03c8b53f2918c5b67bff6e83c95eaa5",
"/js/profile.chunk.9e77e21e157a47c5.js": "/js/profile.chunk.9e77e21e157a47c5.js?id=25567578b59cb051a454fedc84f8a34d",
"/js/discover~memories.chunk.3b45432a80b08e9b.js": "/js/discover~memories.chunk.3b45432a80b08e9b.js?id=fe3102ee61b6d8bf9fdf9d28b80d1ae9",
"/js/discover~myhashtags.chunk.67fd16950ee21ad8.js": "/js/discover~myhashtags.chunk.67fd16950ee21ad8.js?id=70db27f673c81eeb7e807d15c3c3ec9e",
"/js/daci.chunk.3ed914c15dec4ff4.js": "/js/daci.chunk.3ed914c15dec4ff4.js?id=f7aeb4773ef4da06a1f15be07708eeae",
"/js/discover~findfriends.chunk.84758c764668a02c.js": "/js/discover~findfriends.chunk.84758c764668a02c.js?id=3fd0372ff1d6b19c723f67a74961a2c8",
"/js/discover~serverfeed.chunk.93bc564867eaa7c3.js": "/js/discover~serverfeed.chunk.93bc564867eaa7c3.js?id=27a956f91daadc35a5f1a937fff58ad2",
"/js/discover~settings.chunk.950c11c918a541b0.js": "/js/discover~settings.chunk.950c11c918a541b0.js?id=bdbe504c5b3be3a473c436e2c2bba750",
"/js/discover.chunk.2986d7e977f5188a.js": "/js/discover.chunk.2986d7e977f5188a.js?id=f51e4da437a46aaf5d0540641ccbc88b",
"/js/notifications.chunk.8c41265737b2568a.js": "/js/notifications.chunk.8c41265737b2568a.js?id=3c71c0134bcc32bf7f91f82f1e5fa27f",
"/js/dms.chunk.b7e970fb49da0199.js": "/js/dms.chunk.b7e970fb49da0199.js?id=1f8c5e7e35e30e73e070f82de123b5d8",
"/js/dms~message.chunk.011f31232754f650.js": "/js/dms~message.chunk.011f31232754f650.js?id=2eacf2e94ec7fb418f3e6d4276971732",
"/js/profile~followers.bundle.f26ee6ed6ced9aa7.js": "/js/profile~followers.bundle.f26ee6ed6ced9aa7.js?id=ae2d400c3bcf480686ecbf90ef4a66ed",
"/js/profile~following.bundle.4ac5466dca6ca1c4.js": "/js/profile~following.bundle.4ac5466dca6ca1c4.js?id=3956330a33e993d1c7259b679f5953b5",
"/js/discover~hashtag.bundle.db1d86f9e9dcb79a.js": "/js/discover~hashtag.bundle.db1d86f9e9dcb79a.js?id=c9aa656e99c12e264012d0089909f7c4",
"/js/error404.bundle.ad885ef6f9b2c101.js": "/js/error404.bundle.ad885ef6f9b2c101.js?id=5ed4f77d9dce508677d90200fb9e81cd",
"/js/i18n.bundle.882da44b752e4e1a.js": "/js/i18n.bundle.882da44b752e4e1a.js?id=81b682d300258e41f2fd575562119e95",
"/js/changelog.bundle.7fc2ee6c4475458c.js": "/js/changelog.bundle.7fc2ee6c4475458c.js?id=8445c18302c31c1d7d974e08db9b6a6d",
"/js/group.create.0d645a1de271e28d.js": "/js/group.create.0d645a1de271e28d.js?id=40ea73e52db6d7d395505264d3d178c8",
"/js/groups-post.639cb121bdc6f4a7.js": "/js/groups-post.639cb121bdc6f4a7.js?id=a0288be80a4d17f5c966c71d6253f663",
"/js/groups-profile.3b11ffa46ae76520.js": "/js/groups-profile.3b11ffa46ae76520.js?id=399deea282e639d488852a4f2a7a6d8b",
"/js/groups-page-about.06576420562628e3.js": "/js/groups-page-about.06576420562628e3.js?id=d236c4c5ded0ab16516355ad812f43e0",
"/js/groups-page-topics.431ebaf843ca9b16.js": "/js/groups-page-topics.431ebaf843ca9b16.js?id=df82af62cf62ce5df4467ced6b5b0f6b",
"/js/groups-page-members.bfdefdd66058e838.js": "/js/groups-page-members.bfdefdd66058e838.js?id=66283477f45f98715dabab228b58a70b",
"/js/groups-page-media.f611a51e684c48ef.js": "/js/groups-page-media.f611a51e684c48ef.js?id=63ced28b7fed630b5557ed31936a5daa",
"/js/groups-page.53eccead9512c61f.js": "/js/groups-page.53eccead9512c61f.js?id=ca5e177a511b14de259003ad2f96ef47",
"/css/appdark.css": "/css/appdark.css?id=3cbc92b4784f57c91681c8a7ede0db5f",
"/css/app.css": "/css/app.css?id=e10a6f66100a7c9bc1facc89f655de0a",
"/css/portfolio.css": "/css/portfolio.css?id=d98e354f173c6a8b729626384dceaa90",
@ -63,5 +63,5 @@
"/css/landing.css": "/css/landing.css?id=b6e73c3924453e3053aff7d192895d8c",
"/css/profile.css": "/css/profile.css?id=ae4f5db9bb1a89db2ae293d6bde812e3",
"/css/spa.css": "/css/spa.css?id=041aed9a146db0e74b2cfe3ad8eaf96c",
"/js/vendor.js": "/js/vendor.js?id=f058d2814d504b63253b834e4d38de19"
"/js/vendor.js": "/js/vendor.js?id=86eed7580ba947919cbc0716ef7dc0a5"
}

@ -1095,11 +1095,12 @@ export default {
},
defineErrorMessage(errObject) {
let msg;
if (errObject.response) {
let msg = errObject.response.data.message ? errObject.response.data.message : 'An unexpected error occured.';
msg = errObject.response.data.message ? errObject.response.data.message : 'An unexpected error occured.';
}
else {
let msg = errObject.message;
msg = errObject.message;
}
return swal('Oops, something went wrong!', msg, 'error');
},
@ -1765,57 +1766,91 @@ export default {
applyFilterToMedia() {
// this is where the magic happens
var ua = navigator.userAgent.toLowerCase();
if(ua.indexOf('firefox') == -1 && ua.indexOf('chrome') == -1) {
this.isPosting = false;
swal('Oops!', 'Your browser does not support the filter feature.', 'error');
this.page = 3;
return;
}
let count = this.media.filter(m => m.filter_class).length;
if(count) {
this.page = 'filteringMedia';
this.filteringRemainingCount = count;
this.$nextTick(() => {
this.isFilteringMedia = true;
this.media.forEach((media, idx) => this.applyFilterToMediaSave(media, idx));
Promise.all(this.media.map(media => {
return this.applyFilterToMediaSave(media);
})).catch(err => {
console.error(err);
swal('Oops!', 'An error occurred while applying filters to your media. Please refresh the page and try again. If the problem persist, please try a different web browser.', 'error');
});
})
} else {
this.page = 3;
}
},
applyFilterToMediaSave(media, idx) {
async applyFilterToMediaSave(media) {
if(!media.filter_class) {
return;
}
let self = this;
let data = null;
const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
let image = document.createElement('img');
// Load image
const image = document.createElement('img');
image.src = media.url;
image.addEventListener('load', e => {
await new Promise((resolve, reject) => {
image.addEventListener('load', () => resolve());
image.addEventListener('error', () => {
reject(new Error('Failed to load image'));
});
});
// Create canvas
let canvas;
let usingOffscreenCanvas = false;
if('OffscreenCanvas' in window) {
canvas = new OffscreenCanvas(image.width, image.height);
usingOffscreenCanvas = true;
} else {
canvas = document.createElement('canvas');
canvas.width = image.width;
canvas.height = image.height;
ctx.filter = App.util.filterCss[media.filter_class];
ctx.drawImage(image, 0, 0, image.width, image.height);
ctx.save();
canvas.toBlob(function(blob) {
data = new FormData();
data.append('file', blob);
data.append('id', media.id);
axios.post('/api/compose/v0/media/update', data)
.then(res => {
self.media[idx].is_filtered = true;
self.updateFilteringMedia();
}).catch(err => {
});
}
// Draw image with filter to canvas
const ctx = canvas.getContext('2d');
if (!ctx) {
throw new Error('Failed to get canvas context');
}
if (!('filter' in ctx)) {
throw new Error('Canvas filter not supported');
}
ctx.filter = App.util.filterCss[media.filter_class];
ctx.drawImage(image, 0, 0, image.width, image.height);
ctx.save();
// Convert canvas to blob
let blob;
if(usingOffscreenCanvas) {
blob = await canvas.convertToBlob({
type: media.mime,
quality: 1,
});
}, media.mime, 0.9);
ctx.clearRect(0, 0, image.width, image.height);
} else {
blob = await new Promise((resolve, reject) => {
canvas.toBlob(blob => {
if(blob) {
resolve(blob);
} else {
reject(
new Error('Failed to convert canvas to blob'),
);
}
}, media.mime, 1);
});
}
// Upload blob / Update media
const data = new FormData();
data.append('file', blob);
data.append('id', media.id);
await axios.post('/api/compose/v0/media/update', data);
media.is_filtered = true;
this.updateFilteringMedia();
},
updateFilteringMedia() {

@ -13,7 +13,7 @@
<p class="text-center font-weight-bold">How to get your export data from Instagram:</p>
<ol class="pb-4">
<li class="mb-2">
<span>Follow the Instagram instructions on <strong>Downloading a copy of your data on Instagram</strong> on <a href="https://help.instagram.com/181231772500920" class="font-weight-bold">this page</a>. <strong class="text-danger small font-weight-bold">Make sure you select the JSON format</strong></span>
<span><strong>Download your information in Instagram's Accounts Center</strong> on <a href="https://www.instagram.com/download/request" class="font-weight-bold">this page</a>. <strong class="text-danger small font-weight-bold">Make sure you select the JSON format</strong></span>
</li>
<li class="mb-2">
<span>Wait for the email from Instagram with your download link</span>

Loading…
Cancel
Save