0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-01-06 14:50:20 -05:00

🎉 Add feature flag for wasm render

This commit is contained in:
Alejandro Alonso 2024-11-13 11:30:34 +01:00
parent 03acfc2b3c
commit e3268739ed
3 changed files with 11 additions and 7 deletions

View file

@ -51,7 +51,8 @@
"layout/grid"
"plugins/runtime"
"design-tokens/v1"
"text-editor/v2"})
"text-editor/v2"
"render-wasm/v1"})
;; A set of features enabled by default
(def default-features
@ -67,7 +68,8 @@
(def frontend-only-features
#{"styles/v2"
"plugins/runtime"
"text-editor/v2"})
"text-editor/v2"
"render-wasm/v1"})
;; Features that are mainly backend only or there are a proper
;; fallback when frontend reports no support for it
@ -84,9 +86,7 @@
"fdata/pointer-map"
"layout/grid"
"fdata/shape-data-type"
"plugins/runtime"
"design-tokens/v1"
"text-editor/v2"}
"design-tokens/v1"}
(into frontend-only-features)))
(sm/register! ::features
@ -108,6 +108,7 @@
:feature-plugins "plugins/runtime"
:feature-design-tokens "design-tokens/v1"
:feature-text-editor-v2 "text-editor/v2"
:feature-render-wasm "render-wasm/v1"
nil))
(defn migrate-legacy-features

View file

@ -110,8 +110,10 @@
(when *assert*
(->> (rx/from cfeat/no-migration-features)
;; text editor v2 isn't enabled by default even in devenv
;; wasm render v1 isn't enabled by default even in devenv
(rx/filter #(not (or (contains? cfeat/backend-only-features %)
(= "text-editor/v2" %)
(= "render-wasm/v1" %)
(= "design-tokens/v1" %))))
(rx/observe-on :async)
(rx/map enable-feature))))

View file

@ -10,12 +10,13 @@
[app.common.data.macros :as dm]
[app.common.types.shape.impl :as ctsi]
[app.common.uuid :as uuid]
[app.config :as cf]
[app.main.features :as features]
[app.main.store :as st]
[app.util.object :as obj]
[promesa.core :as p]))
(def enabled?
(contains? cf/flags :render-wasm))
(features/active-feature? @st/state "render-wasm/v1"))
(set! app.common.types.shape.impl/enabled-wasm-ready-shape enabled?)