diff --git a/zero.Core/Api/PagesApi.cs b/zero.Core/Api/PagesApi.cs index e7355352..b594bcf3 100644 --- a/zero.Core/Api/PagesApi.cs +++ b/zero.Core/Api/PagesApi.cs @@ -36,6 +36,13 @@ namespace zero.Core.Api } + /// + public async Task> GetByIds(params string[] ids) + { + return await GetByIds(ids); + } + + /// public IList GetPageTypes() { @@ -357,6 +364,11 @@ namespace zero.Core.Api /// Task GetById(string id); + /// + /// Get pages by ids + /// + Task> GetByIds(params string[] ids); + /// /// Get all available page types /// diff --git a/zero.Web.UI/App/components/pickers/pagePicker/overlay.vue b/zero.Web.UI/App/components/pickers/pagePicker/overlay.vue new file mode 100644 index 00000000..0ca01789 --- /dev/null +++ b/zero.Web.UI/App/components/pickers/pagePicker/overlay.vue @@ -0,0 +1,116 @@ + + + + + + \ No newline at end of file diff --git a/zero.Web.UI/App/components/pickers/pagePicker/pagepicker.vue b/zero.Web.UI/App/components/pickers/pagePicker/pagepicker.vue new file mode 100644 index 00000000..b4d719ff --- /dev/null +++ b/zero.Web.UI/App/components/pickers/pagePicker/pagepicker.vue @@ -0,0 +1,198 @@ + + + + + + \ No newline at end of file diff --git a/zero.Web.UI/App/core/editor-field.js b/zero.Web.UI/App/core/editor-field.js index ffeb135b..c594e7a6 100644 --- a/zero.Web.UI/App/core/editor-field.js +++ b/zero.Web.UI/App/core/editor-field.js @@ -16,6 +16,7 @@ import DatePicker from '../editor/fields/datepicker.vue'; import DateRangePicker from '../editor/fields/daterangepicker.vue'; import IconPicker from '../editor/fields/iconPicker.vue'; import LanguagePicker from '../editor/fields/language.vue'; +import PagePicker from '../editor/fields/pagepicker.vue'; import InputList from '../editor/fields/inputlist.vue'; import Media from '../editor/fields/media.vue'; import Modules from '../editor/fields/modules.vue'; @@ -351,6 +352,18 @@ class EditorField } + /** + * Renders a page picker + * @param {object} [options] - Custom options + * @param {number} [options.limit=1] - Limit of selection + * @returns {EditorField} + */ + pagePicker(options) + { + return this._setComponent(PagePicker, { ...options }); + } + + /** * Create a list of strings * @param {number} [limit=10] - Limit the inputs diff --git a/zero.Web.UI/App/editor/editor.scss b/zero.Web.UI/App/editor/editor.scss index d79a6f2e..10491c1d 100644 --- a/zero.Web.UI/App/editor/editor.scss +++ b/zero.Web.UI/App/editor/editor.scss @@ -11,6 +11,13 @@ { padding-top: 0; } + + .ui-tab > h3 + { + border-bottom: 1px solid var(--color-line); + padding-bottom: var(--padding-m); + margin-bottom: var(--padding); + } } .editor-outer @@ -190,4 +197,9 @@ { margin-top: 0; } + + .editor-infos + { + margin-top: 0; + } } \ No newline at end of file diff --git a/zero.Web.UI/App/editor/editor.vue b/zero.Web.UI/App/editor/editor.vue index 6afec539..8aa9c6b0 100644 --- a/zero.Web.UI/App/editor/editor.vue +++ b/zero.Web.UI/App/editor/editor.vue @@ -1,9 +1,9 @@