Merge branch 'v8/dev' into v8/bugfix/AB2734-Image-Deletion-Bug
This commit is contained in:
96
src/Umbraco.Web.UI.Client/package-lock.json
generated
96
src/Umbraco.Web.UI.Client/package-lock.json
generated
@@ -955,7 +955,7 @@
|
||||
},
|
||||
"ansi-escapes": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
|
||||
"integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
|
||||
"dev": true
|
||||
},
|
||||
@@ -1178,7 +1178,7 @@
|
||||
"array-slice": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
|
||||
"integrity": "sha1-42jqFfibxwaff/uJrsOmx9SsItQ=",
|
||||
"integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
|
||||
"dev": true
|
||||
},
|
||||
"array-sort": {
|
||||
@@ -1555,7 +1555,7 @@
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
@@ -1571,7 +1571,7 @@
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
@@ -1746,7 +1746,7 @@
|
||||
"buffer-alloc": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
|
||||
"integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
|
||||
"integrity": "sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"buffer-alloc-unsafe": "^1.1.0",
|
||||
@@ -1756,7 +1756,7 @@
|
||||
"buffer-alloc-unsafe": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
|
||||
"integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
|
||||
"integrity": "sha1-vX3CauKXLQ7aJTvgYdupkjScGfA=",
|
||||
"dev": true
|
||||
},
|
||||
"buffer-crc32": {
|
||||
@@ -2455,7 +2455,7 @@
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -2578,7 +2578,7 @@
|
||||
"core-js": {
|
||||
"version": "2.5.7",
|
||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz",
|
||||
"integrity": "sha1-+XJgj/DOrWi4QaFqky0LGDeRgU4=",
|
||||
"integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==",
|
||||
"dev": true
|
||||
},
|
||||
"core-util-is": {
|
||||
@@ -3562,7 +3562,7 @@
|
||||
"doctrine": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
|
||||
"integrity": "sha1-XNAfwQFiG0LEzX9dGmYkNxbT850=",
|
||||
"integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"esutils": "^2.0.2"
|
||||
@@ -4166,7 +4166,7 @@
|
||||
},
|
||||
"engine.io-client": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
|
||||
"integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -4368,7 +4368,7 @@
|
||||
"source-map": {
|
||||
"version": "0.6.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||
"integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
|
||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
@@ -4463,7 +4463,7 @@
|
||||
"eslint-scope": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz",
|
||||
"integrity": "sha1-UL8wcekzi83EMzF5Sgy1M/ATYXI=",
|
||||
"integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"esrecurse": "^4.1.0",
|
||||
@@ -4473,13 +4473,13 @@
|
||||
"eslint-utils": {
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz",
|
||||
"integrity": "sha1-moUbqJ7nxGA0b5fPiTnHKYgn5RI=",
|
||||
"integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==",
|
||||
"dev": true
|
||||
},
|
||||
"eslint-visitor-keys": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz",
|
||||
"integrity": "sha1-PzGA+y4pEBdxastMnW1bXDSmqB0=",
|
||||
"integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==",
|
||||
"dev": true
|
||||
},
|
||||
"espree": {
|
||||
@@ -4502,7 +4502,7 @@
|
||||
"esquery": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
|
||||
"integrity": "sha1-QGxRZYsfWZGl+bYrHcJbAOPlxwg=",
|
||||
"integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"estraverse": "^4.0.0"
|
||||
@@ -4511,7 +4511,7 @@
|
||||
"esrecurse": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
|
||||
"integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=",
|
||||
"integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"estraverse": "^4.1.0"
|
||||
@@ -4587,7 +4587,7 @@
|
||||
"exec-buffer": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz",
|
||||
"integrity": "sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA==",
|
||||
"integrity": "sha1-sWhtvZBMfPmC5lLB9aebHlVzCCs=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
@@ -4796,7 +4796,7 @@
|
||||
"fill-range": {
|
||||
"version": "2.2.4",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz",
|
||||
"integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==",
|
||||
"integrity": "sha1-6x53OrsFbc2N8r/favWbizqTZWU=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-number": "^2.1.0",
|
||||
@@ -5352,7 +5352,7 @@
|
||||
"fs-constants": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
|
||||
"integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
|
||||
"integrity": "sha1-a+Dem+mYzhavivwkSXue6bfM2a0=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
@@ -6140,7 +6140,7 @@
|
||||
"global-modules": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
|
||||
"integrity": "sha1-bXcPDrUjrHgWTXK15xqIdyZcw+o=",
|
||||
"integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"global-prefix": "^1.0.1",
|
||||
@@ -6743,7 +6743,7 @@
|
||||
"gulp-eslint": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/gulp-eslint/-/gulp-eslint-5.0.0.tgz",
|
||||
"integrity": "sha1-KiaECV93Syz3kxAmIHjFbMehK1I=",
|
||||
"integrity": "sha512-9GUqCqh85C7rP9120cpxXuZz2ayq3BZc85pCTuPJS03VQYxne0aWPIXWx6LSvsGPa3uRqtSO537vaugOh+5cXg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"eslint": "^5.0.1",
|
||||
@@ -8198,7 +8198,7 @@
|
||||
"is-absolute": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
|
||||
"integrity": "sha1-OV4a6EsR8mrReV5zwXN45IowFXY=",
|
||||
"integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-relative": "^1.0.0",
|
||||
@@ -8497,7 +8497,7 @@
|
||||
"is-relative": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
|
||||
"integrity": "sha1-obtpNc6MXboei5dUubLcwCDiJg0=",
|
||||
"integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-unc-path": "^1.0.0"
|
||||
@@ -8506,7 +8506,7 @@
|
||||
"is-resolvable": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
|
||||
"integrity": "sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg=",
|
||||
"integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
|
||||
"dev": true
|
||||
},
|
||||
"is-retry-allowed": {
|
||||
@@ -8556,7 +8556,7 @@
|
||||
"is-unc-path": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
|
||||
"integrity": "sha1-1zHoiY7QkKEsNSrS6u1Qla0yLJ0=",
|
||||
"integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"unc-path-regex": "^0.1.2"
|
||||
@@ -8716,7 +8716,7 @@
|
||||
"json-schema-traverse": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
|
||||
"integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=",
|
||||
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
|
||||
"dev": true
|
||||
},
|
||||
"json-stable-stringify-without-jsonify": {
|
||||
@@ -9475,7 +9475,7 @@
|
||||
"lowercase-keys": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
|
||||
"integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==",
|
||||
"integrity": "sha1-b54wtHCE2XGnyCD/FabFFnt0wm8=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
@@ -9510,7 +9510,7 @@
|
||||
"make-dir": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
|
||||
"integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
|
||||
"integrity": "sha1-ecEDO4BRW9bSTsmTPoYMp17ifww=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"pify": "^3.0.0"
|
||||
@@ -9527,7 +9527,7 @@
|
||||
"make-iterator": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
|
||||
"integrity": "sha1-KbM/MSqo9UfEpeSQ9Wr87JkTOtY=",
|
||||
"integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"kind-of": "^6.0.2"
|
||||
@@ -9724,7 +9724,7 @@
|
||||
"mimic-fn": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz",
|
||||
"integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=",
|
||||
"integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==",
|
||||
"dev": true
|
||||
},
|
||||
"minimatch": {
|
||||
@@ -12877,7 +12877,7 @@
|
||||
"dependencies": {
|
||||
"minimist": {
|
||||
"version": "0.0.10",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
|
||||
"resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
|
||||
"integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
|
||||
"dev": true
|
||||
},
|
||||
@@ -13269,7 +13269,7 @@
|
||||
"pluralize": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz",
|
||||
"integrity": "sha1-KYuJ34uTsCIdv0Ia0rGx6iP8Z3c=",
|
||||
"integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==",
|
||||
"dev": true
|
||||
},
|
||||
"posix-character-classes": {
|
||||
@@ -13961,7 +13961,7 @@
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -14459,7 +14459,7 @@
|
||||
"safer-buffer": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
|
||||
"integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=",
|
||||
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
|
||||
"dev": true
|
||||
},
|
||||
"sax": {
|
||||
@@ -14648,7 +14648,7 @@
|
||||
"setprototypeof": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
|
||||
"integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=",
|
||||
"integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
|
||||
"dev": true
|
||||
},
|
||||
"shebang-command": {
|
||||
@@ -14926,7 +14926,7 @@
|
||||
},
|
||||
"socket.io-parser": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
|
||||
"resolved": "http://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
|
||||
"integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -15071,7 +15071,7 @@
|
||||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
@@ -15224,7 +15224,7 @@
|
||||
"stream-consume": {
|
||||
"version": "0.1.1",
|
||||
"resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz",
|
||||
"integrity": "sha1-0721mMK9CugrjKx6xQsRB6eZbEg=",
|
||||
"integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg==",
|
||||
"dev": true
|
||||
},
|
||||
"stream-shift": {
|
||||
@@ -15237,7 +15237,7 @@
|
||||
"streamroller": {
|
||||
"version": "0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz",
|
||||
"integrity": "sha1-odG3z4PTmvsNYwSaWsv5NJO99ks=",
|
||||
"integrity": "sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"date-format": "^1.2.0",
|
||||
@@ -15264,7 +15264,7 @@
|
||||
"readable-stream": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=",
|
||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"core-util-is": "~1.0.0",
|
||||
@@ -15279,7 +15279,7 @@
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"safe-buffer": "~5.1.0"
|
||||
@@ -15296,7 +15296,7 @@
|
||||
"string-width": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
|
||||
"integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=",
|
||||
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-fullwidth-code-point": "^2.0.0",
|
||||
@@ -15492,7 +15492,7 @@
|
||||
"strip-outer": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz",
|
||||
"integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==",
|
||||
"integrity": "sha1-sv0qv2YEudHmATBXGV34Nrip1jE=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
@@ -15661,7 +15661,7 @@
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
@@ -15873,7 +15873,7 @@
|
||||
"tmp": {
|
||||
"version": "0.0.33",
|
||||
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
|
||||
"integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=",
|
||||
"integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"os-tmpdir": "~1.0.2"
|
||||
@@ -15910,7 +15910,7 @@
|
||||
"to-buffer": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz",
|
||||
"integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==",
|
||||
"integrity": "sha1-STvUj2LXxD/N7TE6A9ytsuEhOoA=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
@@ -16246,13 +16246,13 @@
|
||||
"upath": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz",
|
||||
"integrity": "sha1-NSVll+RqWB20eT0M5H+prr/J+r0=",
|
||||
"integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==",
|
||||
"dev": true
|
||||
},
|
||||
"uri-js": {
|
||||
"version": "4.2.2",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
|
||||
"integrity": "sha1-lMVA4f93KVbiKZUHwBCupsiDjrA=",
|
||||
"integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"punycode": "^2.1.0"
|
||||
|
||||
@@ -327,10 +327,24 @@ In the following example you see how to run some custom logic before a step goes
|
||||
}
|
||||
|
||||
var scrollParent = element.scrollParent();
|
||||
var scrollToCenterOfContainer = element[0].offsetTop - (scrollParent[0].clientHeight / 2 ) + (element[0].clientHeight / 2);
|
||||
var el = element;
|
||||
var offsetTop = 0;
|
||||
if (scrollParent[0] === document) {
|
||||
offsetTop = el[0].offsetTop;
|
||||
} else {
|
||||
while ($.contains(scrollParent[0], el[0])) {
|
||||
offsetTop += el[0].offsetTop;
|
||||
el = el.offsetParent();
|
||||
}
|
||||
}
|
||||
|
||||
var scrollToCenterOfContainer = offsetTop - (scrollParent[0].clientHeight / 2);
|
||||
if (element[0].clientHeight < scrollParent[0].clientHeight) {
|
||||
scrollToCenterOfContainer += (element[0].clientHeight / 2);
|
||||
}
|
||||
|
||||
// Detect if scroll is needed
|
||||
if (element[0].offsetTop > scrollParent[0].clientHeight) {
|
||||
if (offsetTop > scrollParent[0].clientHeight - 200) {
|
||||
scrollParent.animate({
|
||||
scrollTop: scrollToCenterOfContainer
|
||||
}, function () {
|
||||
@@ -391,7 +405,7 @@ In the following example you see how to run some custom logic before a step goes
|
||||
}
|
||||
|
||||
if (position === "right") {
|
||||
if (offset.top < documentHeight / 2) {
|
||||
if (offset.top + popoverHeight < documentHeight) {
|
||||
css.top = offset.top;
|
||||
css.left = offset.left + width + margin;
|
||||
} else {
|
||||
@@ -411,7 +425,7 @@ In the following example you see how to run some custom logic before a step goes
|
||||
}
|
||||
|
||||
if (position === "left") {
|
||||
if (offset.top < documentHeight / 2) {
|
||||
if (offset.top + popoverHeight < documentHeight) {
|
||||
css.top = offset.top;
|
||||
css.left = offset.left - popoverWidth - margin;
|
||||
} else {
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
|
||||
//watch for changes to isNew & the content.id, set the page.isNew accordingly and load the breadcrumb if we can
|
||||
$scope.$watchGroup(['isNew', 'content.id'], function (newVal, oldVal) {
|
||||
|
||||
|
||||
var contentId = newVal[1];
|
||||
$scope.page.isNew = Object.toBoolean(newVal[0]);
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
if (content.id && content.isChildOfListView && content.trashed === false) {
|
||||
$scope.page.listViewPath = "/content/content/edit/" + content.parentId
|
||||
+ "?list=" + $routeParams.list
|
||||
+ "&page=" + $routeParams.page
|
||||
+ "&page=" + $routeParams.page
|
||||
+ "&filter=" + $routeParams.filter
|
||||
+ "&orderBy=" + $routeParams.orderBy
|
||||
+ "&orderDirection=" + $routeParams.orderDirection;
|
||||
@@ -171,6 +171,24 @@
|
||||
}
|
||||
}));
|
||||
|
||||
evts.push(eventsService.on("editors.content.reload", function (name, args) {
|
||||
if (args && args.node && $scope.content.id === args.node.id) {
|
||||
reload();
|
||||
loadBreadcrumb();
|
||||
syncTreeNode($scope.content, $scope.content.path);
|
||||
}
|
||||
}));
|
||||
|
||||
evts.push(eventsService.on("rte.file.uploading", function(){
|
||||
$scope.page.saveButtonState = "busy";
|
||||
$scope.page.buttonGroupState = "busy";
|
||||
|
||||
}));
|
||||
|
||||
evts.push(eventsService.on("rte.file.uploaded", function(){
|
||||
$scope.page.saveButtonState = "success";
|
||||
$scope.page.buttonGroupState = "success";
|
||||
}));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -493,7 +511,7 @@
|
||||
|
||||
$scope.unpublish = function () {
|
||||
clearNotifications($scope.content);
|
||||
if (formHelper.submitForm({ scope: $scope, action: "unpublish", skipValidation: true })) {
|
||||
if (formHelper.submitForm({ scope: $scope, action: "unpublish", skipValidation: true })) {
|
||||
var dialog = {
|
||||
parentScope: $scope,
|
||||
view: "views/content/overlays/unpublish.html",
|
||||
|
||||
@@ -364,6 +364,22 @@
|
||||
};
|
||||
|
||||
|
||||
scope.openDocumentType = function (documentTypeId) {
|
||||
const editor = {
|
||||
id: documentTypeId,
|
||||
submit: function (model) {
|
||||
const args = { node: scope.model };
|
||||
eventsService.emit("editors.documentType.reload", args);
|
||||
editorService.close();
|
||||
},
|
||||
close: function () {
|
||||
editorService.close();
|
||||
}
|
||||
};
|
||||
editorService.documentTypeEditor(editor);
|
||||
|
||||
};
|
||||
|
||||
/* ---------- GROUPS ---------- */
|
||||
|
||||
scope.addGroup = function(group) {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* A service containing all logic for all of the Umbraco TinyMCE plugins
|
||||
*/
|
||||
function tinyMceService($rootScope, $q, imageHelper, $locale, $http, $timeout, stylesheetResource, macroResource, macroService,
|
||||
$routeParams, umbRequestHelper, angularHelper, userService, editorService, entityResource) {
|
||||
$routeParams, umbRequestHelper, angularHelper, userService, editorService, entityResource, eventsService) {
|
||||
|
||||
//These are absolutely required in order for the macros to render inline
|
||||
//we put these as extended elements because they get merged on top of the normal allowed elements by tiny mce
|
||||
@@ -167,6 +167,18 @@ function tinyMceService($rootScope, $q, imageHelper, $locale, $http, $timeout, s
|
||||
xhr = new XMLHttpRequest();
|
||||
xhr.open('POST', Umbraco.Sys.ServerVariables.umbracoUrls.tinyMceApiBaseUrl + 'UploadImage');
|
||||
|
||||
xhr.onloadstart = function(e) {
|
||||
angularHelper.safeApply($rootScope, function() {
|
||||
eventsService.emit("rte.file.uploading");
|
||||
});
|
||||
};
|
||||
|
||||
xhr.onloadend = function(e) {
|
||||
angularHelper.safeApply($rootScope, function() {
|
||||
eventsService.emit("rte.file.uploaded");
|
||||
});
|
||||
};
|
||||
|
||||
xhr.upload.onprogress = function (e) {
|
||||
progress(e.loaded / e.total * 100);
|
||||
};
|
||||
|
||||
@@ -1,23 +1,27 @@
|
||||
<div ng-controller="Umbraco.Installer.PackagesController" id="starterKits">
|
||||
<h1>Install a starter website</h1>
|
||||
<div ng-controller="Umbraco.Installer.PackagesController" id="starterKits">
|
||||
<h1>Install a starter website</h1>
|
||||
|
||||
<p>
|
||||
Installing a starter website helps you learn how Umbraco works, and
|
||||
gives you a solid and simple foundation to build on top of.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Installing a starter website helps you learn how Umbraco works, and gives you a solid
|
||||
and simple foundation to build on top of.
|
||||
</p>
|
||||
|
||||
<small ng-if="!packages || packages.length == 0">Loading...</small>
|
||||
|
||||
<ul class="thumbnails">
|
||||
<ul class="thumbnails">
|
||||
<li class="span3" ng-repeat="pck in packages">
|
||||
<a href ng-click="setPackageAndContinue(pck.id)" class="thumbnail">
|
||||
<small>Loading...</small>
|
||||
<img ng-src="https://our.umbraco.com{{pck.thumbnail}}?width=170" alt="{{pck.name}}">
|
||||
<a ng-click="setPackageAndContinue(pck.id)" class="thumbnail">
|
||||
<img ng-src="https://our.umbraco.com{{
|
||||
pck.thumbnail
|
||||
}}?width=170"
|
||||
alt="{{ pck.name }}" />
|
||||
<small>Install starter website</small>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href ng-click="setPackageAndContinue('00000000-0000-0000-0000-000000000000')" class="btn btn-link btn-link-reverse">
|
||||
<a href ng-click="setPackageAndContinue('00000000-0000-0000-0000-000000000000')"
|
||||
class="btn btn-link btn-link-reverse">
|
||||
No thanks, I do not want to install a starter website
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -1,72 +1,71 @@
|
||||
<div ng-controller="Umbraco.Install.UserController">
|
||||
<h1>Install Umbraco 8</h1>
|
||||
<div ng-controller="Umbraco.Install.UserController">
|
||||
<h1>Install Umbraco 8</h1>
|
||||
|
||||
<p>Enter your name, email and password to install Umbraco 8 with its default settings, alternatively you can customize your installation</p>
|
||||
<p>Enter your name, email and password to install Umbraco 8 with its default settings, alternatively you can customize your installation</p>
|
||||
|
||||
<form name="myForm" class="form-horizontal" novalidate ng-submit="validateAndInstall();">
|
||||
<form name="myForm" class="form-horizontal" novalidate ng-submit="validateAndInstall();">
|
||||
|
||||
<div class="row">
|
||||
<div class="span8">
|
||||
<div class="pull-right">
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="name">Name</label>
|
||||
<div class="controls">
|
||||
<input type="text" id="name" name="name" placeholder="Full name" required ng-model="installer.current.model.name" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="email">Email</label>
|
||||
<div class="controls">
|
||||
<input type="email" id="email" name="email" placeholder="you@example.com" val-email required ng-model="installer.current.model.email" />
|
||||
<small class="inline-help">Your email will be used as your login</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="password">Password</label>
|
||||
<div class="controls">
|
||||
<!-- why isn't this masked: https://www.nngroup.com/articles/stop-password-masking/ -->
|
||||
<input type="text" name="installer.current.model.password"
|
||||
ng-minlength="{{installer.current.model.minCharLength}}"
|
||||
ng-pattern="passwordPattern"
|
||||
autocorrect="off"
|
||||
autocapitalize="off"
|
||||
autocomplete="off"
|
||||
required
|
||||
ng-model="installer.current.model.password" id="password" />
|
||||
<small class="inline-help">At least {{installer.current.model.minCharLength}} characters long</small>
|
||||
|
||||
<small ng-if="installer.current.model.minNonAlphaNumericLength > 0" class="inline-help">
|
||||
At least {{installer.current.model.minNonAlphaNumericLength}} symbol{{installer.current.model.minNonAlphaNumericLength > 1 ? 's' : ''}}
|
||||
</small>
|
||||
<div class="row">
|
||||
<div class="span8">
|
||||
<div class="pull-right">
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="name">Name</label>
|
||||
<div class="controls">
|
||||
<input type="text" id="name" name="name" placeholder="Full name" required ng-model="installer.current.model.name" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="email">Email</label>
|
||||
<div class="controls">
|
||||
<input type="email" id="email" name="email" placeholder="you@example.com" val-email required ng-model="installer.current.model.email" />
|
||||
<small class="inline-help">Your email will be used as your login</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="password">Password</label>
|
||||
<div class="controls">
|
||||
<!-- why isn't this masked: https://www.nngroup.com/articles/stop-password-masking/ -->
|
||||
<input type="text" name="installer.current.model.password"
|
||||
ng-minlength="{{installer.current.model.minCharLength}}"
|
||||
ng-pattern="passwordPattern"
|
||||
autocorrect="off"
|
||||
autocapitalize="off"
|
||||
autocomplete="off"
|
||||
required
|
||||
ng-model="installer.current.model.password" id="password" />
|
||||
<small class="inline-help">At least {{installer.current.model.minCharLength}} characters long</small>
|
||||
|
||||
<small ng-if="installer.current.model.minNonAlphaNumericLength > 0" class="inline-help">
|
||||
At least {{installer.current.model.minNonAlphaNumericLength}} symbol{{installer.current.model.minNonAlphaNumericLength > 1 ? 's' : ''}}
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="control-group">
|
||||
<div class="controls">
|
||||
<label>
|
||||
<input
|
||||
type="checkbox"
|
||||
id="subscribeToNewsLetter"
|
||||
name="subscribeToNewsLetter"
|
||||
ng-model="installer.current.model.subscribeToNewsLetter" />
|
||||
Keep me updated on Umbraco Versions, Security Bulletins and Community News
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<div class="controls">
|
||||
<label>
|
||||
<input type="checkbox"
|
||||
id="subscribeToNewsLetter"
|
||||
name="subscribeToNewsLetter"
|
||||
ng-model="installer.current.model.subscribeToNewsLetter" />
|
||||
Keep me updated on Umbraco Versions, Security Bulletins and Community News
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group" ng-class="{disabled:myForm.$invalid}">
|
||||
<div class="controls">
|
||||
<input type="submit" ng-disabled="myForm.$invalid" value="Install" class="btn btn-success" />
|
||||
<a href class="btn btn-info control-customize" ng-disabled="myForm.$invalid" ng-click="validateAndForward()">Customize</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group" ng-class="{disabled:myForm.$invalid}">
|
||||
<div class="controls">
|
||||
<input type="submit" ng-disabled="myForm.$invalid" value="Install" class="btn btn-success" />
|
||||
<button class="btn btn-info control-customize" ng-disabled="myForm.$invalid" ng-click="validateAndForward()">Customize</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -272,7 +272,6 @@ a, a:hover{
|
||||
ul.sections {
|
||||
display: block;
|
||||
background: #1b264f;
|
||||
height: 100%;
|
||||
position:absolute;
|
||||
top: 90px;
|
||||
width: 80px;
|
||||
@@ -281,12 +280,21 @@ ul.sections {
|
||||
margin:0;
|
||||
padding:0;
|
||||
margin-left: -80px;
|
||||
overflow: scroll;
|
||||
overflow-x: hidden;
|
||||
height: calc(100% - 91px);
|
||||
|
||||
&::-webkit-scrollbar {
|
||||
width: 0px;
|
||||
background: transparent;
|
||||
}
|
||||
}
|
||||
|
||||
ul.sections li {
|
||||
display: block;
|
||||
border-left: 4px #1b264f solid;
|
||||
transition: all .3s linear;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.fix-left-menu ul.sections li a span,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Core variables and mixins
|
||||
// Core variables and mixins
|
||||
@import "fonts.less"; // Loading fonts
|
||||
@import "variables.less"; // Modify this for custom colors, font-sizes, etc
|
||||
@import "mixins.less";
|
||||
@@ -18,154 +18,172 @@
|
||||
|
||||
|
||||
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
|
||||
display: none !important;
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
|
||||
html {
|
||||
background: url('../img/installer.jpg') no-repeat center center fixed;
|
||||
background-size: cover;
|
||||
background: url('../img/installer.jpg') no-repeat center center fixed;
|
||||
background-size: cover;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
|
||||
font-family: @baseFontFamily;
|
||||
font-size: @baseFontSize;
|
||||
line-height: @baseLineHeight;
|
||||
color: @textColor;
|
||||
|
||||
vertical-align: middle;
|
||||
text-align: center;
|
||||
|
||||
// better font rendering
|
||||
-webkit-font-smoothing: antialiased;
|
||||
font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
font-family: @baseFontFamily;
|
||||
font-size: @baseFontSize;
|
||||
line-height: @baseLineHeight;
|
||||
color: @textColor;
|
||||
vertical-align: middle;
|
||||
text-align: center;
|
||||
// better font rendering
|
||||
-webkit-font-smoothing: antialiased;
|
||||
font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
#logo{
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
left: 20px;
|
||||
opacity: 0.8;
|
||||
z-index: 777;
|
||||
#logo {
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
left: 20px;
|
||||
opacity: 0.8;
|
||||
z-index: 777;
|
||||
}
|
||||
|
||||
#installer{
|
||||
margin: auto;
|
||||
#installer {
|
||||
margin: auto;
|
||||
background: @white;
|
||||
width: 750px;
|
||||
height: 600px;
|
||||
text-align: left;
|
||||
padding: 30px;
|
||||
overflow:hidden;
|
||||
z-index: 667;
|
||||
width: 750px;
|
||||
height: 600px;
|
||||
text-align: left;
|
||||
padding: 30px;
|
||||
overflow: hidden;
|
||||
z-index: 667;
|
||||
}
|
||||
|
||||
#overlay{
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
background: @purple-d2;
|
||||
z-index: 666;
|
||||
#overlay {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
background: @purple-d2;
|
||||
z-index: 666;
|
||||
}
|
||||
|
||||
.loading #overlay{
|
||||
.loading #overlay {
|
||||
opacity: 0.5;
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
|
||||
#fact{
|
||||
color: @white;
|
||||
text-shadow: 0px 0px 4px @black;
|
||||
font-size: 25px;
|
||||
text-align: left;
|
||||
line-height: 35px;
|
||||
z-index: 667;
|
||||
height: 600px;
|
||||
width: 750px;
|
||||
#fact {
|
||||
color: @white;
|
||||
text-shadow: 0px 0px 4px @black;
|
||||
font-size: 25px;
|
||||
text-align: left;
|
||||
line-height: 35px;
|
||||
z-index: 667;
|
||||
height: 600px;
|
||||
width: 750px;
|
||||
|
||||
h2 {
|
||||
font-size: 35px;
|
||||
border-bottom: 1px solid @white;
|
||||
padding-bottom: 10px;
|
||||
margin-bottom: 20px;
|
||||
color: @white;
|
||||
}
|
||||
|
||||
a {
|
||||
color: @white;
|
||||
}
|
||||
}
|
||||
|
||||
#fact h2{
|
||||
font-size: 35px;
|
||||
border-bottom: 1px solid @white;
|
||||
padding-bottom: 10px;
|
||||
margin-bottom: 20px;
|
||||
color: @white;
|
||||
}
|
||||
|
||||
#fact a{color: @white;}
|
||||
|
||||
#feedback{
|
||||
color: @white;
|
||||
text-shadow: 0px 0px 4px @black;
|
||||
font-size: 14px;
|
||||
text-align: center;
|
||||
line-height: 20px;
|
||||
z-index: 667;
|
||||
bottom: 20px;
|
||||
right: 0;
|
||||
left: 0;
|
||||
height: 25px;
|
||||
position: absolute;
|
||||
#feedback {
|
||||
color: @white;
|
||||
text-shadow: 0px 0px 4px @black;
|
||||
font-size: 14px;
|
||||
text-align: center;
|
||||
line-height: 20px;
|
||||
z-index: 667;
|
||||
bottom: 20px;
|
||||
right: 0;
|
||||
left: 0;
|
||||
height: 25px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
h1{
|
||||
border-bottom: 1px solid @gray-10;
|
||||
padding-bottom: 10px;
|
||||
color: @gray-2;
|
||||
h1 {
|
||||
border-bottom: 1px solid @gray-10;
|
||||
padding-bottom: 10px;
|
||||
color: @gray-2;
|
||||
}
|
||||
|
||||
.error h1, .error .message, span.error{ color: @red;}
|
||||
.error h1, .error .message, span.error {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
legend{font-size: 14px; font-weight: bold}
|
||||
legend {
|
||||
font-size: 14px;
|
||||
font-weight: bold
|
||||
}
|
||||
|
||||
input.ng-dirty.ng-invalid{border-color: #b94a48; color: #b94a48;}
|
||||
.disabled{
|
||||
opacity: 0.6;
|
||||
input.ng-dirty.ng-invalid {
|
||||
border-color: #b94a48;
|
||||
color: #b94a48;
|
||||
}
|
||||
|
||||
.disabled {
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
|
||||
#installer label.control-label,
|
||||
#installer label.control-label,
|
||||
#installer .constrol-label {
|
||||
padding-top: 5px !important;
|
||||
}
|
||||
|
||||
.controls{
|
||||
text-align: left
|
||||
}
|
||||
.controls {
|
||||
text-align: left;
|
||||
|
||||
.controls small{display: block; color: @gray-3;}
|
||||
small {
|
||||
display: block;
|
||||
color: @gray-3;
|
||||
}
|
||||
}
|
||||
|
||||
.absolute-center {
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
top: 0; left: 0; bottom: 0; right: 0;
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.fade-hide, .fade-show {
|
||||
transition:all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
|
||||
}
|
||||
.fade-hide {
|
||||
opacity:1;
|
||||
}
|
||||
.fade-hide.fade-hide-active {
|
||||
opacity:0;
|
||||
}
|
||||
.fade-hide,
|
||||
.fade-show {
|
||||
opacity:0;
|
||||
transition: all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
|
||||
}
|
||||
|
||||
.fade-hide {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.fade-hide.fade-hide-active {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.fade-show {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.fade-show.fade-show-active {
|
||||
opacity:1;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.umb-installer-loader {
|
||||
@@ -180,49 +198,60 @@ input.ng-dirty.ng-invalid{border-color: #b94a48; color: #b94a48;}
|
||||
}
|
||||
|
||||
.permissions-report {
|
||||
overflow:auto;
|
||||
height:320px;
|
||||
margin:0;
|
||||
display:block;
|
||||
padding:0;
|
||||
overflow: auto;
|
||||
height: 320px;
|
||||
margin: 0;
|
||||
display: block;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.permissions-report > li {
|
||||
list-style:none;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.permissions-report h4 {
|
||||
margin:7px;
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.upgrade-report {
|
||||
overflow:auto;
|
||||
height:280px;
|
||||
display:block;
|
||||
overflow: auto;
|
||||
height: 280px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
select {
|
||||
width:320px;
|
||||
width: 320px;
|
||||
}
|
||||
|
||||
#ysod {
|
||||
height:500px;
|
||||
width:100%;
|
||||
overflow:auto;
|
||||
border:none;
|
||||
height: 500px;
|
||||
width: 100%;
|
||||
overflow: auto;
|
||||
border: none;
|
||||
}
|
||||
#starterKits .thumbnails{
|
||||
min-height:128px;
|
||||
}
|
||||
#starterKits a.thumbnail {
|
||||
position:relative;
|
||||
height:98px;
|
||||
}
|
||||
#starterKits a.thumbnail small {
|
||||
position:absolute;
|
||||
z-index: 50;
|
||||
top:10px;
|
||||
left:10px;
|
||||
}
|
||||
#starterKits a.thumbnail img {
|
||||
position:relative;
|
||||
z-index:100;
|
||||
|
||||
#starterKits {
|
||||
.thumbnails {
|
||||
min-height: 128px;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.thumbnail {
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
|
||||
small {
|
||||
padding: 10px 10px 5px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
img {
|
||||
position: relative;
|
||||
z-index: 100;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-link {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,3 +66,5 @@
|
||||
.ml5 { margin-left: @spacing-extra-large; }
|
||||
.ml6 { margin-left: @spacing-extra-extra-large; }
|
||||
.ml7 { margin-left: @spacing-extra-extra-extra-large; }
|
||||
|
||||
.p0 { padding: @spacing-none; }
|
||||
|
||||
@@ -143,7 +143,10 @@ var app = angular.module("umbraco.preview", ['umbraco.resources', 'umbraco.servi
|
||||
setPageUrl();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
$scope.isCurrentCulture = function(culture) {
|
||||
return $location.search().culture === culture;
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
<i class="icon icon-merge"></i>
|
||||
<localize key="contentTypeEditor_inheritedFrom"></localize>: {{ tab.inheritedFromName }}
|
||||
<span ng-repeat="contentTypeName in tab.parentTabContentTypeNames">
|
||||
<a href="#/settings/documentTypes/edit/{{tab.parentTabContentTypes[$index]}}">{{ contentTypeName }}</a>
|
||||
<button type="button" class="btn-link btn-small p0" ng-click="openDocumentType(tab.parentTabContentTypes[$index])">{{ contentTypeName }}</button>
|
||||
<span ng-if="!$last">, </span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -497,6 +497,12 @@
|
||||
loadDocumentType();
|
||||
}));
|
||||
|
||||
evts.push(eventsService.on("editors.documentType.reload", function (name, args) {
|
||||
if (args && args.node && vm.contentType.id === args.node.id) {
|
||||
loadDocumentType();
|
||||
}
|
||||
}));
|
||||
|
||||
evts.push(eventsService.on("editors.documentType.saved", function(name, args) {
|
||||
if(args.documentType.allowedTemplates.length > 0){
|
||||
navigationService.syncTree({ tree: "templates", path: [], forceReload: true })
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<umb-editor-sub-header>
|
||||
|
||||
<umb-editor-sub-header-content-left>
|
||||
<umb-button button-style="success"
|
||||
<umb-button button-style="action"
|
||||
type="button"
|
||||
action="vm.addLanguage()"
|
||||
label-key="languages_addLanguage">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<div class="wmd-panel" ng-controller="Umbraco.PropertyEditors.MarkdownEditorController">
|
||||
<div id="wmd-button-bar-{{editorId}}"></div>
|
||||
|
||||
<textarea class="wmd-input" id="wmd-input-{{editorId}}" ng-model="model.value"></textarea>
|
||||
<textarea class="wmd-input" id="wmd-input-{{editorId}}" ng-model="model.value" ng-required="model.validation.mandatory"></textarea>
|
||||
|
||||
<div class="wmd-panel wmd-preview" id="wmd-preview-{{editorId}}" ng-show="model.config.preview"></div>
|
||||
|
||||
|
||||
@@ -53,4 +53,6 @@
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<input type="hidden" name="mandatory" ng-model="model.mandatory" ng-required="model.validation.mandatory && !mediaItems.length" />
|
||||
|
||||
</div>
|
||||
|
||||
@@ -18,4 +18,6 @@
|
||||
<localize key="general_add">Add</localize>
|
||||
</a>
|
||||
|
||||
<input type="hidden" name="mandatory" ng-model="model.mandatory" ng-required="model.validation.mandatory && !renderModel.length" />
|
||||
|
||||
</div>
|
||||
|
||||
@@ -18,4 +18,6 @@
|
||||
<localize key="general_add">Add</localize>
|
||||
</a>
|
||||
|
||||
<input type="hidden" name="mandatory" ng-model="model.mandatory" ng-required="model.validation.mandatory && !renderModel.length" />
|
||||
|
||||
</div>
|
||||
|
||||
@@ -80,6 +80,7 @@
|
||||
break;
|
||||
default:
|
||||
}
|
||||
validate();
|
||||
}
|
||||
|
||||
$scope.add = function () {
|
||||
@@ -89,6 +90,7 @@
|
||||
var newItemIndex = $scope.model.value.length - 1;
|
||||
$scope.model.value[newItemIndex].hasFocus = true;
|
||||
}
|
||||
validate();
|
||||
};
|
||||
|
||||
$scope.remove = function (index) {
|
||||
@@ -118,6 +120,16 @@
|
||||
$scope.promptIsVisible = "-1";
|
||||
}
|
||||
|
||||
function validate() {
|
||||
if ($scope.multipleTextboxForm) {
|
||||
var invalid = $scope.model.validation.mandatory && !$scope.model.value.length
|
||||
$scope.multipleTextboxForm.mandatory.$setValidity("minCount", !invalid);
|
||||
}
|
||||
}
|
||||
$timeout(function () {
|
||||
validate();
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
angular.module("umbraco").controller("Umbraco.PropertyEditors.MultipleTextBoxController", MultipleTextBoxController);
|
||||
|
||||
@@ -1,31 +1,32 @@
|
||||
<div class="umb-property-editor umb-multiple-textbox" ng-controller="Umbraco.PropertyEditors.MultipleTextBoxController">
|
||||
|
||||
<div ui-sortable="sortableOptions" ng-model="model.value">
|
||||
<div class="flex flex-wrap textbox-wrapper" ng-repeat="item in model.value track by $index">
|
||||
<input type="text" name="item_{{$index}}" ng-model="item.value" class="umb-property-editor umb-textstring textstring flx-i"
|
||||
ng-keyup="addRemoveOnKeyDown($event, $index)" focus-when="{{item.hasFocus}}"/>
|
||||
<div class="icon-wrapper">
|
||||
<i class="icon icon-navigation handle" localize="title" title="@general_move"></i>
|
||||
|
||||
<div class="umb-multiple-textbox__confirm" ng-show="model.value.length > model.config.min">
|
||||
<button class="umb-multiple-textbox__confirm-action" type="button" prevet-default ng-click="showPrompt($index, item)" localize="title" title="@content_removeTextBox">
|
||||
<i class="icon-trash"></i>
|
||||
</button>
|
||||
|
||||
<umb-confirm-action
|
||||
ng-if="promptIsVisible === $index"
|
||||
direction="left"
|
||||
on-confirm="remove($index)"
|
||||
on-cancel="hidePrompt()">
|
||||
</umb-confirm-action>
|
||||
</div>
|
||||
</div>
|
||||
<ng-form name="multipleTextboxForm">
|
||||
<div ui-sortable="sortableOptions" ng-model="model.value">
|
||||
<div class="flex flex-wrap textbox-wrapper" ng-repeat="item in model.value track by $index">
|
||||
<input type="text" name="item_{{$index}}" ng-model="item.value" class="umb-property-editor umb-textstring textstring flx-i"
|
||||
ng-keyup="addRemoveOnKeyDown($event, $index)" focus-when="{{item.hasFocus}}"/>
|
||||
<div class="icon-wrapper">
|
||||
<i class="icon icon-navigation handle" localize="title" title="@general_move"></i>
|
||||
|
||||
<div class="umb-multiple-textbox__confirm" ng-show="model.value.length > model.config.min">
|
||||
<button class="umb-multiple-textbox__confirm-action" type="button" prevet-default ng-click="showPrompt($index, item)" localize="title" title="@content_removeTextBox">
|
||||
<i class="icon-trash"></i>
|
||||
</button>
|
||||
|
||||
<umb-confirm-action
|
||||
ng-if="promptIsVisible === $index"
|
||||
direction="left"
|
||||
on-confirm="remove($index)"
|
||||
on-cancel="hidePrompt()">
|
||||
</umb-confirm-action>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a prevent-default href="" class="add-link" localize="title" title="@content_addTextBox"
|
||||
ng-show="model.config.max <= 0 || model.value.length < model.config.max"
|
||||
ng-click="add()">
|
||||
<localize key="general_add">Add</localize>
|
||||
</a>
|
||||
|
||||
<a prevent-default href="" class="add-link" localize="title" title="@content_addTextBox"
|
||||
ng-show="model.config.max <= 0 || model.value.length < model.config.max"
|
||||
ng-click="add()">
|
||||
<localize key="general_add">Add</localize>
|
||||
</a>
|
||||
<input type="hidden" name="mandatory" ng-model="model.value" />
|
||||
</ng-form>
|
||||
</div>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<div ng-controller="Umbraco.PropertyEditors.textAreaController">
|
||||
<ng-form name="textareaFieldForm">
|
||||
<textarea ng-model="model.value" id="{{model.alias}}" name="textarea" rows="{{model.config.rows || 10}}" class="umb-property-editor umb-textarea textstring" val-server="value" ng-keyup="model.change()"></textarea>
|
||||
<textarea ng-model="model.value" id="{{model.alias}}" name="textarea" rows="{{model.config.rows || 10}}" class="umb-property-editor umb-textarea textstring" val-server="value" ng-keyup="model.change()" ng-required="model.validation.mandatory" aria-required="{{model.validation.mandatory}}"></textarea>
|
||||
|
||||
<span ng-messages="textareaFieldForm.textarea.$error" show-validation-on-submit >
|
||||
<span class="help-inline" ng-message="required"><localize key="general_required">Required</localize></span>
|
||||
|
||||
@@ -1,6 +1,18 @@
|
||||
describe('RTE controller tests', function () {
|
||||
var scope, controllerFactory;
|
||||
|
||||
|
||||
//mock tinymce globals
|
||||
if ((typeof tinymce) === "undefined") {
|
||||
tinymce = {
|
||||
DOM: {
|
||||
events: {
|
||||
domLoaded: false
|
||||
}
|
||||
},
|
||||
baseUrl: ""
|
||||
}
|
||||
}
|
||||
|
||||
beforeEach(module('umbraco', function ($provide) {
|
||||
$provide.value('tinyMceAssets', []);
|
||||
}));
|
||||
|
||||
@@ -44,21 +44,21 @@
|
||||
</div>
|
||||
<ul class="sections" ng-class="{selected: showDevicesPreview && showDevices}">
|
||||
<li ng-repeat="device in devices" ng-class="{ current:previewDevice==device }">
|
||||
<a href="" ng-click="updatePreviewDevice(device)"><i class="icon {{device.icon}}" title="{{device.title}}"></i><span></span></a>
|
||||
<a ng-click="updatePreviewDevice(device)"><i class="icon {{device.icon}}" title="{{device.title}}"></i><span></span></a>
|
||||
</li>
|
||||
|
||||
@if (Model.Languages != null && Model.Languages.Count() > 1)
|
||||
{
|
||||
foreach (var previewLink in Model.Languages)
|
||||
{
|
||||
<li>
|
||||
<a href="" ng-click="changeCulture('@previewLink.IsoCode')" title="Preview in @previewLink.CultureName"><i class="icon icon-globe-europe---africa"></i><span>@previewLink.CultureName</span></a>
|
||||
<li ng-class="{ current:isCurrentCulture('@previewLink.IsoCode') }">
|
||||
<a ng-click="changeCulture('@previewLink.IsoCode')" title="Preview in @previewLink.CultureName"><i class="icon icon-globe-europe---africa"></i><span>@previewLink.CultureName</span></a>
|
||||
</li>
|
||||
}
|
||||
}
|
||||
|
||||
<li>
|
||||
<a href="" ng-click="exitPreview()" title="Exit Preview"><i class="icon icon-wrong"></i><span> </span></a>
|
||||
<a ng-click="exitPreview()" title="Exit Preview"><i class="icon icon-wrong"></i><span> </span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user