mirror of
https://github.com/penpot/penpot.git
synced 2025-02-08 08:09:14 -05:00
Merge remote-tracking branch 'origin/staging' into develop
This commit is contained in:
commit
f554de8859
12 changed files with 69 additions and 20 deletions
|
@ -25,7 +25,8 @@
|
|||
- Fix problem with strokes not refreshing in Safari [Taiga #9040](https://tree.taiga.io/project/penpot/issue/9040)
|
||||
- Fix problem with multiple color changes [Taiga #9631](https://tree.taiga.io/project/penpot/issue/9631)
|
||||
|
||||
## 2.4.3 (Unreleased)
|
||||
|
||||
## 2.4.3
|
||||
|
||||
### :bug: Bugs fixed
|
||||
|
||||
|
|
|
@ -42,8 +42,8 @@
|
|||
(def default-params
|
||||
{::port 6060
|
||||
::host "0.0.0.0"
|
||||
::max-body-size (* 1024 1024 30) ; default 30 MiB
|
||||
::max-multipart-body-size (* 1024 1024 120)}) ; default 120 MiB
|
||||
::max-body-size 31457280 ; default 30 MiB
|
||||
::max-multipart-body-size 367001600}) ; default 350 MiB
|
||||
|
||||
(defmethod ig/expand-key ::server
|
||||
[k v]
|
||||
|
|
|
@ -6,4 +6,4 @@
|
|||
|
||||
(ns app.common.files.defaults)
|
||||
|
||||
(def version 64)
|
||||
(def version 67)
|
||||
|
|
|
@ -1179,7 +1179,25 @@
|
|||
|
||||
(update data :components update-vals update-component)))
|
||||
|
||||
(defn migrate-up-63
|
||||
(defn migrate-up-65
|
||||
[data]
|
||||
(let [update-object
|
||||
(fn [object]
|
||||
(d/update-when object :plugin-data d/without-nils))
|
||||
|
||||
update-page
|
||||
(fn [page]
|
||||
(-> (update-object page)
|
||||
(update :objects update-vals update-object)))]
|
||||
|
||||
(-> data
|
||||
(update-object)
|
||||
(d/update-when :pages-index update-vals update-page)
|
||||
(d/update-when :colors update-vals update-object)
|
||||
(d/update-when :typographies update-vals update-object)
|
||||
(d/update-when :components update-vals update-object))))
|
||||
|
||||
(defn migrate-up-66
|
||||
[data]
|
||||
(letfn [(update-object [object]
|
||||
(if (and (:rx object) (not (:r1 object)))
|
||||
|
@ -1197,7 +1215,7 @@
|
|||
(update :pages-index update-vals update-container)
|
||||
(update :components update-vals update-container))))
|
||||
|
||||
(defn migrate-up-64
|
||||
(defn migrate-up-67
|
||||
[data]
|
||||
(letfn [(update-object [object]
|
||||
(d/update-when object :shadow #(into [] (reverse %))))
|
||||
|
@ -1260,5 +1278,6 @@
|
|||
{:id 57 :migrate-up migrate-up-57}
|
||||
{:id 59 :migrate-up migrate-up-59}
|
||||
{:id 62 :migrate-up migrate-up-62}
|
||||
{:id 63 :migrate-up migrate-up-63}
|
||||
{:id 64 :migrate-up migrate-up-64}])
|
||||
{:id 65 :migrate-up migrate-up-65}
|
||||
{:id 66 :migrate-up migrate-up-66}
|
||||
{:id 67 :migrate-up migrate-up-67}])
|
||||
|
|
|
@ -29,6 +29,15 @@ x-flags: &penpot-flags
|
|||
x-uri: &penpot-public-uri
|
||||
PENPOT_PUBLIC_URI: http://localhost:9001
|
||||
|
||||
x-body-size: &penpot-http-body-size
|
||||
# Max body size (30MiB); Used for plain requests, should never be
|
||||
# greater than multi-part size
|
||||
PENPOT_HTTP_SERVER_MAX_BODY_SIZE: 31457280
|
||||
|
||||
# Max multipart body size (350MiB)
|
||||
PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE: 367001600
|
||||
|
||||
|
||||
networks:
|
||||
penpot:
|
||||
|
||||
|
@ -103,7 +112,7 @@ services:
|
|||
# - "traefik.http.routers.penpot-https.tls.certresolver=letsencrypt"
|
||||
|
||||
environment:
|
||||
<< : *penpot-flags
|
||||
<< : [*penpot-flags, *penpot-http-body-size]
|
||||
|
||||
penpot-backend:
|
||||
image: "penpotapp/backend:latest"
|
||||
|
@ -125,7 +134,7 @@ services:
|
|||
## container.
|
||||
|
||||
environment:
|
||||
<< : [*penpot-flags, *penpot-public-uri]
|
||||
<< : [*penpot-flags, *penpot-public-uri, *penpot-http-body-size]
|
||||
|
||||
## Penpot SECRET KEY. It serves as a master key from which other keys for subsystems
|
||||
## (eg http sessions, or invitations) are derived.
|
||||
|
@ -283,5 +292,3 @@ services:
|
|||
# ports:
|
||||
# - 9000:9000
|
||||
# - 9001:9001
|
||||
|
||||
|
||||
|
|
|
@ -22,7 +22,9 @@ update_flags /var/www/app/js/config.js
|
|||
export PENPOT_BACKEND_URI=${PENPOT_BACKEND_URI:-http://penpot-backend:6060};
|
||||
export PENPOT_EXPORTER_URI=${PENPOT_EXPORTER_URI:-http://penpot-exporter:6061};
|
||||
export PENPOT_INTERNAL_RESOLVER=${PENPOT_INTERNAL_RESOLVER:-127.0.0.11};
|
||||
export PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE=${PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE:-367001600}; # Default to 350MiB
|
||||
|
||||
envsubst "\$PENPOT_BACKEND_URI,\$PENPOT_EXPORTER_URI,\$PENPOT_INTERNAL_RESOLVER" < /etc/nginx/nginx.conf.template > /etc/nginx/nginx.conf
|
||||
envsubst "\$PENPOT_BACKEND_URI,\$PENPOT_EXPORTER_URI,\$PENPOT_INTERNAL_RESOLVER,\$PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE" \
|
||||
< /etc/nginx/nginx.conf.template > /etc/nginx/nginx.conf
|
||||
|
||||
exec "$@";
|
||||
|
|
|
@ -64,7 +64,7 @@ http {
|
|||
listen 8080 default_server;
|
||||
server_name _;
|
||||
|
||||
client_max_body_size 100M;
|
||||
client_max_body_size $PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE;
|
||||
charset utf-8;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
|
|
|
@ -467,6 +467,7 @@
|
|||
(defn create-file
|
||||
[{:keys [project-id name] :as params}]
|
||||
(dm/assert! (uuid? project-id))
|
||||
|
||||
(ptk/reify ::create-file
|
||||
ev/Event
|
||||
(-data [_] {:project-id project-id})
|
||||
|
|
|
@ -169,7 +169,7 @@
|
|||
(let [mdata {:on-success on-file-created}
|
||||
params {:project-id (:id project)}]
|
||||
(st/emit! (-> (dd/create-file (with-meta params mdata))
|
||||
(with-meta {::ev/origin origin}))))))]
|
||||
(with-meta {::ev/origin origin :has-files (> file-count 0)}))))))]
|
||||
|
||||
(mf/with-effect [project]
|
||||
(when project
|
||||
|
|
|
@ -20,7 +20,10 @@
|
|||
(mf/use-fn
|
||||
(mf/deps create-fn)
|
||||
(fn [_]
|
||||
(create-fn "dashboard:empty-folder-placeholder")))]
|
||||
(create-fn "dashboard:empty-folder-placeholder")))
|
||||
show-text (mf/use-state nil)
|
||||
on-mouse-enter (mf/use-fn #(reset! show-text true))
|
||||
on-mouse-leave (mf/use-fn #(reset! show-text nil))]
|
||||
(cond
|
||||
(true? dragging?)
|
||||
[:ul
|
||||
|
@ -43,9 +46,15 @@
|
|||
|
||||
:else
|
||||
[:div {:class (stl/css :grid-empty-placeholder)}
|
||||
[:button {:class (stl/css :create-new)
|
||||
:on-click on-click}
|
||||
(if (cf/external-feature-flag "add-file-01" "test") (tr "dashboard.add-file") i/add)]])))
|
||||
(if (cf/external-feature-flag "add-file-01" "test")
|
||||
[:button {:class (stl/css :create-new)
|
||||
:on-click on-click
|
||||
:on-mouse-enter on-mouse-enter
|
||||
:on-mouse-leave on-mouse-leave}
|
||||
(if @show-text (tr "dashboard.add-file") i/add)]
|
||||
[:button {:class (stl/css :create-new)
|
||||
:on-click on-click}
|
||||
i/add])])))
|
||||
|
||||
(mf/defc loading-placeholder
|
||||
[]
|
||||
|
|
|
@ -181,7 +181,7 @@
|
|||
(let [mdata {:on-success on-file-created}
|
||||
params {:project-id project-id}]
|
||||
(st/emit! (-> (dd/create-file (with-meta params mdata))
|
||||
(with-meta {::ev/origin origin}))))))
|
||||
(with-meta {::ev/origin origin :has-files (> file-count 0)}))))))
|
||||
|
||||
on-create-click
|
||||
(mf/use-fn
|
||||
|
|
|
@ -358,6 +358,16 @@ export class SelectionController extends EventTarget {
|
|||
detail: this.#currentStyle,
|
||||
})
|
||||
);
|
||||
} else {
|
||||
const firstInline = this.#textEditor.root?.firstElementChild?.firstElementChild;
|
||||
if (firstInline) {
|
||||
this.#updateCurrentStyle(firstInline);
|
||||
this.dispatchEvent(
|
||||
new CustomEvent("stylechange", {
|
||||
detail: this.#currentStyle,
|
||||
}),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue