Files
Umbraco-CMS/src/Umbraco.Web.UI.Client/gulp/config.js
Niels Lyngsø ae84d324ab V13/feature/blocks in rte (#15029)
* insert umb rte block web component in rte

* First stab at moving the RTE markup to a nested "markup" property in the property value.

* initial work

* only rewrite markup

* transform RTE into component

* parse scope in grid.rte

* revert use a fallback instead

* block insertion and sync in place

* block picker partly impl

* remove test of old controller

* remove test of old controller

* block with block data

* proper block with api connection

* remove log

* styling

* Persist blocks data (still a temporary solution)

* styling allows for interaction

* block actions

* tinyMCE styling

* paste feature

* prevalue display Inline toggle

* inline mode in RTE

* todo note

* fixes wording

* preparation for editor communication

* remove val-server-match for now

* clean up blocks that does not belong in markup

* remove blocks not used in the markup

* liveEditing

* displayAsBlock formatting

* clean up

* TODO note

* Serverside handling for RTE blocks (incl. refactor of Block List and Block Grid)

* ensure rich text loads after block editor

* trigger resize on block init

* Handle RTE blocks output in Delivery API

* sanitize ng classes

* simplify calls to init blocks

* move sanitisation

* make validation work

* only warn when missing one

* clean up

* remove validation border as it does not work

* more clean up

* add unsupported block entry editor

* Revert breaking functionality for Block List and Grid

* prevent re-inits of blocks

* make sure delete blocks triggers an update

* Refactor RichTextPropertyIndexValueFactory to index values from blocks + clean up RichTextPropertyEditor dependencies

* first working cursor solution

* inline element approach

* Handle both inline and block level blocks

* Fix the RTE block parser regex so it handles multiple inline blocks.

* Fix reference and tags tracking, add tests, make the editor backwards compatible and make deploy happy

* Use RichTextPropertyEditorHelper serialization in tests

* Ensure correct model in Block Grid value converter (incl unit test to prove it)

* do not include umbblockpicker in grid

* make blocks the new default, instead of macros

* only send value of body from DOMParser

* Blocks of deleted ElementTypes shows unsupported

* do not edit a unsupported block

* remove trying to be smart on the init

* fix missing culture issue

* set dirty

* alert when no blocks

* Revert "make blocks the new default, instead of macros"

This reverts commit 283e8aa473fdfde075197d34aa47e35dfc64a8ae.

---------

Co-authored-by: kjac <kja@umbraco.dk>
2023-10-31 12:52:35 +01:00

105 lines
4.7 KiB
JavaScript
Executable File

'use strict';
module.exports = {
compile: {
build: {
sourcemaps: false,
embedtemplates: true,
minify: true,
lint: true
},
dev: {
sourcemaps: true,
embedtemplates: true,
minify: false,
lint: false
},
test: {
sourcemaps: false,
embedtemplates: true,
minify: true,
lint: true
}
},
sources: {
// css files used in backoffice
css: {
blockgridlayout: { files: "./src/views/propertyeditors/blockgrid/umbraco-blockgridlayout.css", watch: "./src/views/propertyeditors/blockgrid/umbraco-blockgridlayout.css", out: "umbraco-blockgridlayout.css", dist: "/css" },
blockgridlayout_flexbox: { files: "./src/views/propertyeditors/blockgrid/umbraco-blockgridlayout-flexbox.css", watch: "./src/views/propertyeditors/blockgrid/umbraco-blockgridlayout-flexbox.css", out: "umbraco-blockgridlayout-flexbox.css", dist: "/css" }
},
// less files used by backoffice and preview
// processed in the less task
less: {
installer: { files: "./src/less/installer.less", watch: "./src/less/**/*.less", out: "installer.min.css" },
nonodes: { files: "./src/less/pages/nonodes.less", watch: "./src/less/**/*.less", out: "nonodes.style.min.css"},
preview: { files: "./src/less/canvas-designer.less", watch: "./src/less/**/*.less", out: "canvasdesigner.min.css" },
umbraco: { files: "./src/less/belle.less", watch: "./src/**/*.less", out: "umbraco.min.css" },
rteContent: { files: "./src/less/rte-content.less", watch: "./src/less/**/*.less", out: "rte-content.css" },
icons: { files: "./src/less/icons.less", watch: "./src/less/**/*.less", out: "icons.css" },
blockgridui: { files: "./src/views/propertyeditors/blockgrid/blockgridui.less", watch: "./src/views/propertyeditors/blockgrid/blockgridui.less", out: "blockgridui.css" },
blockrteui: { files: "./src/views/propertyeditors/rte/blockrteui.less", watch: "./src/views/propertyeditors/rte/blockrteui.less", out: "blockrteui.css" }
},
// js files for backoffice
// processed in the js task
js: {
websitepreview: { files: "./src/websitepreview/**/*.js", out: "umbraco.websitepreview.js" },
preview: { files: "./src/preview/**/*.js", out: "umbraco.preview.js" },
installer: { files: "./src/installer/**/*.js", out: "umbraco.installer.js" },
filters: { files: "./src/common/filters/**/*.js", out: "umbraco.filters.js" },
resources: { files: "./src/common/resources/**/*.js", out: "umbraco.resources.js" },
services: { files: ["./src/common/services/**/*.js", "./src/utilities.js"], out: "umbraco.services.js" },
security: { files: "./src/common/interceptors/**/*.js", out: "umbraco.interceptors.js" },
//the controllers for views
controllers: {
files: [
"./src/views/**/*.controller.js",
"./src/*.controller.js"
], out: "umbraco.controllers.js"
},
//directives/components
// - any JS file found in common / directives or common/ components
// - any JS file found inside views that has the suffix .directive.js or .component.js
directives: {
files: [
"./src/common/directives/_module.js",
"./src/{common/directives,common/components}/**/*.js",
"./src/views/**/*.{directive,component}.js"
],
out: "umbraco.directives.js"
}
},
//selectors for copying all views into the build
//processed in the views task
views:{
views: {files: "./src/views/**/*.html", folder: ""},
directives: {files: "./src/common/directives/**/*.html", folder: ""},
components: {files: "./src/common/components/**/*.html", folder: ""},
installer: {files: "./src/installer/steps/*.html", folder: "install/"}
},
//globs for file-watching
globs:{
views: ["./src/views/**/*.html", "./src/common/directives/**/*.html", "./src/common/components/**/*.html" ],
less: "./src/less/**/*.less",
js: "./src/*.js",
lib: "./lib/**/*",
assets: "./src/assets/**"
}
},
roots: ["../Umbraco.Cms.StaticAssets/wwwroot/"],
targets: {
js: "umbraco/js/",
lib: "umbraco/lib/",
views: "umbraco/views/",
less: "umbraco/assets/css/",
css: "umbraco/assets/css/",
assets: "umbraco/assets/"
}
};