@dnncommunity/dnn-elements 0.13.1 → 0.14.0-beta.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/cjs/dnn-button.cjs.entry.js +2 -2
- package/dist/cjs/dnn-button.cjs.entry.js.map +1 -1
- package/dist/cjs/{dnn-button_14.cjs.entry.js → dnn-button_16.cjs.entry.js} +333 -121
- package/dist/cjs/dnn-button_16.cjs.entry.js.map +1 -0
- package/dist/cjs/dnn-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/dnn-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-chevron.cjs.entry.js +2 -2
- package/dist/cjs/dnn-chevron.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-collapsible.cjs.entry.js +27 -73
- package/dist/cjs/dnn-collapsible.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-color-picker.cjs.entry.js +2 -2
- package/dist/cjs/dnn-color-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-dropzone.cjs.entry.js +2 -2
- package/dist/cjs/dnn-dropzone.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-image-cropper.cjs.entry.js +8 -24
- package/dist/cjs/dnn-image-cropper.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-modal.cjs.entry.js +2 -2
- package/dist/cjs/dnn-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-searchbox.cjs.entry.js +2 -2
- package/dist/cjs/dnn-searchbox.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-sort-icon.cjs.entry.js +1 -1
- package/dist/cjs/dnn-tab.cjs.entry.js +1 -1
- package/dist/cjs/dnn-tabs.cjs.entry.js +6 -4
- package/dist/cjs/dnn-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-toggle.cjs.entry.js +2 -2
- package/dist/cjs/dnn-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-treeview-item.cjs.entry.js +35 -15
- package/dist/cjs/dnn-treeview-item.cjs.entry.js.map +1 -1
- package/dist/cjs/dnn-vertical-overflow-menu.cjs.entry.js +122 -0
- package/dist/cjs/dnn-vertical-overflow-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/dnn-vertical-splitview.cjs.entry.js +127 -0
- package/dist/cjs/dnn-vertical-splitview.cjs.entry.js.map +1 -0
- package/dist/cjs/dnn.cjs.js +2 -2
- package/dist/cjs/{index-e85ec026.js → index-7505bd72.js} +4 -5
- package/dist/cjs/index-7505bd72.js.map +1 -0
- package/dist/cjs/{index-eede7745.js → index-aff4d89a.js} +2 -2
- package/dist/cjs/{index-eede7745.js.map → index-aff4d89a.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/mouseUtilities-75be531a.js +25 -0
- package/dist/cjs/mouseUtilities-75be531a.js.map +1 -0
- package/dist/collection/collection-manifest.json +3 -1
- package/dist/collection/components/dnn-collapsible/dnn-collapsible.css +4 -3
- package/dist/collection/components/dnn-collapsible/dnn-collapsible.js +27 -72
- package/dist/collection/components/dnn-collapsible/dnn-collapsible.js.map +1 -1
- package/dist/collection/components/dnn-image-cropper/dnn-image-cropper.js +6 -22
- package/dist/collection/components/dnn-image-cropper/dnn-image-cropper.js.map +1 -1
- package/dist/collection/components/dnn-tabs/dnn-tabs.js +4 -2
- package/dist/collection/components/dnn-tabs/dnn-tabs.js.map +1 -1
- package/dist/collection/components/dnn-treeview-item/dnn-treeview-item.css +2 -2
- package/dist/collection/components/dnn-treeview-item/dnn-treeview-item.js +66 -16
- package/dist/collection/components/dnn-treeview-item/dnn-treeview-item.js.map +1 -1
- package/dist/collection/components/dnn-vertical-overflow-menu/dnn-vertical-overflow-menu.css +56 -0
- package/dist/collection/components/dnn-vertical-overflow-menu/dnn-vertical-overflow-menu.js +132 -0
- package/dist/collection/components/dnn-vertical-overflow-menu/dnn-vertical-overflow-menu.js.map +1 -0
- package/dist/collection/components/dnn-vertical-splitview/dnn-vertical-splitview.css +37 -0
- package/dist/collection/components/dnn-vertical-splitview/dnn-vertical-splitview.js +228 -0
- package/dist/collection/components/dnn-vertical-splitview/dnn-vertical-splitview.js.map +1 -0
- package/dist/collection/utilities/mouseUtilities.js +20 -0
- package/dist/collection/utilities/mouseUtilities.js.map +1 -0
- package/dist/dnn/app-globals-497eb362.system.js +2 -0
- package/dist/dnn/app-globals-497eb362.system.js.map +1 -0
- package/dist/dnn/css-shim-856c55de.system.js +2 -0
- package/dist/dnn/css-shim-856c55de.system.js.map +1 -0
- package/dist/dnn/debounce-eef81bf7.system.js +2 -0
- package/dist/dnn/debounce-eef81bf7.system.js.map +1 -0
- package/dist/dnn/dnn-button.entry.js +2 -2
- package/dist/dnn/dnn-button.entry.js.map +1 -1
- package/dist/dnn/dnn-button.system.entry.js +2 -0
- package/dist/dnn/dnn-button.system.entry.js.map +1 -0
- package/dist/dnn/dnn-checkbox.entry.js +2 -2
- package/dist/dnn/dnn-checkbox.entry.js.map +1 -1
- package/dist/dnn/dnn-checkbox.system.entry.js +2 -0
- package/dist/dnn/dnn-checkbox.system.entry.js.map +1 -0
- package/dist/dnn/dnn-chevron.entry.js +2 -2
- package/dist/dnn/dnn-chevron.entry.js.map +1 -1
- package/dist/dnn/dnn-chevron.system.entry.js +2 -0
- package/dist/dnn/dnn-chevron.system.entry.js.map +1 -0
- package/dist/dnn/dnn-collapsible.entry.js +27 -73
- package/dist/dnn/dnn-collapsible.entry.js.map +1 -1
- package/dist/dnn/dnn-collapsible.system.entry.js +2 -0
- package/dist/dnn/dnn-collapsible.system.entry.js.map +1 -0
- package/dist/dnn/dnn-color-picker.entry.js +2 -2
- package/dist/dnn/dnn-color-picker.entry.js.map +1 -1
- package/dist/dnn/dnn-color-picker.system.entry.js +12 -0
- package/dist/dnn/dnn-color-picker.system.entry.js.map +1 -0
- package/dist/dnn/dnn-dropzone.entry.js +2 -2
- package/dist/dnn/dnn-dropzone.entry.js.map +1 -1
- package/dist/dnn/dnn-dropzone.system.entry.js +2 -0
- package/dist/dnn/dnn-dropzone.system.entry.js.map +1 -0
- package/dist/dnn/dnn-image-cropper.entry.js +8 -24
- package/dist/dnn/dnn-image-cropper.entry.js.map +1 -1
- package/dist/dnn/dnn-image-cropper.system.entry.js +2 -0
- package/dist/dnn/dnn-image-cropper.system.entry.js.map +1 -0
- package/dist/dnn/dnn-modal.entry.js +2 -2
- package/dist/dnn/dnn-modal.entry.js.map +1 -1
- package/dist/dnn/dnn-modal.system.entry.js +2 -0
- package/dist/dnn/dnn-modal.system.entry.js.map +1 -0
- package/dist/dnn/dnn-searchbox.entry.js +2 -2
- package/dist/dnn/dnn-searchbox.entry.js.map +1 -1
- package/dist/dnn/dnn-searchbox.system.entry.js +2 -0
- package/dist/dnn/dnn-searchbox.system.entry.js.map +1 -0
- package/dist/dnn/dnn-sort-icon.entry.js +1 -1
- package/dist/dnn/dnn-sort-icon.system.entry.js +2 -0
- package/dist/dnn/dnn-sort-icon.system.entry.js.map +1 -0
- package/dist/dnn/dnn-tab.entry.js +1 -1
- package/dist/dnn/dnn-tab.system.entry.js +2 -0
- package/dist/dnn/dnn-tab.system.entry.js.map +1 -0
- package/dist/dnn/dnn-tabs.entry.js +6 -4
- package/dist/dnn/dnn-tabs.entry.js.map +1 -1
- package/dist/dnn/dnn-tabs.system.entry.js +2 -0
- package/dist/dnn/dnn-tabs.system.entry.js.map +1 -0
- package/dist/dnn/dnn-toggle.entry.js +2 -2
- package/dist/dnn/dnn-toggle.entry.js.map +1 -1
- package/dist/dnn/dnn-toggle.system.entry.js +2 -0
- package/dist/dnn/dnn-toggle.system.entry.js.map +1 -0
- package/dist/dnn/dnn-treeview-item.entry.js +35 -15
- package/dist/dnn/dnn-treeview-item.entry.js.map +1 -1
- package/dist/dnn/dnn-treeview-item.system.entry.js +2 -0
- package/dist/dnn/dnn-treeview-item.system.entry.js.map +1 -0
- package/dist/dnn/dnn-vertical-overflow-menu.entry.js +118 -0
- package/dist/dnn/dnn-vertical-overflow-menu.entry.js.map +1 -0
- package/dist/dnn/dnn-vertical-overflow-menu.system.entry.js +2 -0
- package/dist/dnn/dnn-vertical-overflow-menu.system.entry.js.map +1 -0
- package/dist/dnn/dnn-vertical-splitview.entry.js +123 -0
- package/dist/dnn/dnn-vertical-splitview.entry.js.map +1 -0
- package/dist/dnn/dnn-vertical-splitview.system.entry.js +2 -0
- package/dist/dnn/dnn-vertical-splitview.system.entry.js.map +1 -0
- package/dist/dnn/dnn.esm.js +2 -2
- package/dist/dnn/dnn.js +130 -0
- package/dist/dnn/dnn.system.js +2 -0
- package/dist/dnn/dnn.system.js.map +1 -0
- package/dist/dnn/dom-938307ec.system.js +22 -0
- package/dist/dnn/dom-938307ec.system.js.map +1 -0
- package/dist/dnn/index-a3a55419.system.js +2 -0
- package/dist/dnn/index-a3a55419.system.js.map +1 -0
- package/dist/dnn/{index-6c0764e5.js → index-b5a28c1d.js} +2 -2
- package/dist/dnn/{index-6c0764e5.js.map → index-b5a28c1d.js.map} +1 -1
- package/dist/dnn/index.system.js +2 -0
- package/dist/dnn/index.system.js.map +1 -0
- package/dist/dnn/mouseUtilities-817973b4.js +23 -0
- package/dist/dnn/mouseUtilities-817973b4.js.map +1 -0
- package/dist/dnn/mouseUtilities-e7e4e78f.system.js +2 -0
- package/dist/dnn/mouseUtilities-e7e4e78f.system.js.map +1 -0
- package/dist/dnn/p-058ba146.system.js +2 -0
- package/dist/dnn/p-058ba146.system.js.map +1 -0
- package/dist/dnn/p-45ce2139.js +2 -0
- package/dist/dnn/p-45ce2139.js.map +1 -0
- package/dist/dnn/p-4d2d8419.system.entry.js +11 -0
- package/dist/dnn/p-4d2d8419.system.entry.js.map +1 -0
- package/dist/dnn/p-646cfb1b.system.js +2 -0
- package/dist/dnn/p-646cfb1b.system.js.map +1 -0
- package/dist/dnn/p-e4da2e36.entry.js +11 -0
- package/dist/dnn/p-e4da2e36.entry.js.map +1 -0
- package/dist/dnn/p-f91193e2.system.js +2 -0
- package/dist/dnn/p-f91193e2.system.js.map +1 -0
- package/dist/dnn/p-fb637662.system.js +2 -0
- package/dist/dnn/p-fb637662.system.js.map +1 -0
- package/dist/dnn/shadow-css-d573707f.system.js +14 -0
- package/dist/dnn/shadow-css-d573707f.system.js.map +1 -0
- package/dist/esm/dnn-button.entry.js +2 -2
- package/dist/esm/dnn-button.entry.js.map +1 -1
- package/dist/esm/{dnn-button_14.entry.js → dnn-button_16.entry.js} +332 -122
- package/dist/esm/dnn-button_16.entry.js.map +1 -0
- package/dist/esm/dnn-checkbox.entry.js +2 -2
- package/dist/esm/dnn-checkbox.entry.js.map +1 -1
- package/dist/esm/dnn-chevron.entry.js +2 -2
- package/dist/esm/dnn-chevron.entry.js.map +1 -1
- package/dist/esm/dnn-collapsible.entry.js +27 -73
- package/dist/esm/dnn-collapsible.entry.js.map +1 -1
- package/dist/esm/dnn-color-picker.entry.js +2 -2
- package/dist/esm/dnn-color-picker.entry.js.map +1 -1
- package/dist/esm/dnn-dropzone.entry.js +2 -2
- package/dist/esm/dnn-dropzone.entry.js.map +1 -1
- package/dist/esm/dnn-image-cropper.entry.js +8 -24
- package/dist/esm/dnn-image-cropper.entry.js.map +1 -1
- package/dist/esm/dnn-modal.entry.js +2 -2
- package/dist/esm/dnn-modal.entry.js.map +1 -1
- package/dist/esm/dnn-searchbox.entry.js +2 -2
- package/dist/esm/dnn-searchbox.entry.js.map +1 -1
- package/dist/esm/dnn-sort-icon.entry.js +1 -1
- package/dist/esm/dnn-tab.entry.js +1 -1
- package/dist/esm/dnn-tabs.entry.js +6 -4
- package/dist/esm/dnn-tabs.entry.js.map +1 -1
- package/dist/esm/dnn-toggle.entry.js +2 -2
- package/dist/esm/dnn-toggle.entry.js.map +1 -1
- package/dist/esm/dnn-treeview-item.entry.js +35 -15
- package/dist/esm/dnn-treeview-item.entry.js.map +1 -1
- package/dist/esm/dnn-vertical-overflow-menu.entry.js +118 -0
- package/dist/esm/dnn-vertical-overflow-menu.entry.js.map +1 -0
- package/dist/esm/dnn-vertical-splitview.entry.js +123 -0
- package/dist/esm/dnn-vertical-splitview.entry.js.map +1 -0
- package/dist/esm/dnn.js +2 -2
- package/dist/esm/{index-6c0764e5.js → index-b5a28c1d.js} +2 -2
- package/dist/esm/{index-6c0764e5.js.map → index-b5a28c1d.js.map} +1 -1
- package/dist/esm/{index-f79d9e82.js → index-cdbad319.js} +4 -5
- package/dist/esm/index-cdbad319.js.map +1 -0
- package/dist/esm/loader.js +2 -2
- package/dist/esm/mouseUtilities-817973b4.js +23 -0
- package/dist/esm/mouseUtilities-817973b4.js.map +1 -0
- package/dist/esm-es5/debounce-06f55268.js +2 -0
- package/dist/esm-es5/debounce-06f55268.js.map +1 -0
- package/dist/esm-es5/dnn-button_16.entry.js +11 -0
- package/dist/esm-es5/dnn-button_16.entry.js.map +1 -0
- package/dist/esm-es5/dnn.js +2 -0
- package/dist/esm-es5/dnn.js.map +1 -0
- package/dist/esm-es5/index-cdbad319.js +2 -0
- package/dist/esm-es5/index-cdbad319.js.map +1 -0
- package/dist/esm-es5/index.js +2 -0
- package/dist/esm-es5/index.js.map +1 -0
- package/dist/esm-es5/loader.js +2 -0
- package/dist/esm-es5/loader.js.map +1 -0
- package/dist/types/components/dnn-collapsible/dnn-collapsible.d.ts +7 -11
- package/dist/types/components/dnn-image-cropper/dnn-image-cropper.d.ts +0 -1
- package/dist/types/components/dnn-treeview-item/dnn-treeview-item.d.ts +10 -2
- package/dist/types/components/dnn-vertical-overflow-menu/dnn-vertical-overflow-menu.d.ts +16 -0
- package/dist/types/components/dnn-vertical-splitview/dnn-vertical-splitview.d.ts +27 -0
- package/dist/types/components.d.ts +64 -2
- package/dist/types/utilities/mouseUtilities.d.ts +4 -0
- package/loader/index.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/dnn-button_14.cjs.entry.js.map +0 -1
- package/dist/cjs/index-e85ec026.js.map +0 -1
- package/dist/dnn/p-7acf3104.entry.js +0 -11
- package/dist/dnn/p-7acf3104.entry.js.map +0 -1
- package/dist/dnn/p-bd3d3361.js +0 -2
- package/dist/dnn/p-bd3d3361.js.map +0 -1
- package/dist/esm/dnn-button_14.entry.js.map +0 -1
- package/dist/esm/index-f79d9e82.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-cdbad319.js';
|
|
2
2
|
import { D as Debounce } from './debounce-06f55268.js';
|
|
3
3
|
|
|
4
|
-
const dnnButtonCss = ":host{--background-color:transparent;--color:#333;--border-size:1px;--border-color:var(--backround-color);--border-radius:var(--dnn-controls-radius, 5px);--padding:var(--dnn-controls-padding, 5px);display:inline-block;width:auto}:host(.disabled){pointer-events:none}:host(.primary){--background-color:var(--dnn-color-primary, blue);--color:var(--dnn-color-primary-contrast, white);--focus-color:var(--background-color)}:host(.primary.reversed){--background-color:var(--dnn-color-primary-contrast, white);--color:var(--dnn-color-primary, blue);--border-color:var(--dnn-color-primary, blue);--focus-color:var(--color)}:host(.secondary){--background-color:var(--dnn-color-secondary, green);--color:var(--dnn-color-secondary-contrast, white);--focus-color:var(--background-color)}:host(.secondary.reversed){--background-color:var(--dnn-color-secondary-contrast, white);--color:var(--dnn-color-secondary, blue);--border-color:var(--dnn-color-secondary, blue);--focus-color:var(--color)}:host(.tertiary){--background-color:var(--dnn-color-tertiary, yellow);--color:var(--dnn-color-tertiary-contrast, black);--focus-color:var(--background-color)}:host(.tertiary.reversed){--background-color:var(--dnn-color-tertiary-contrast, white);--color:var(--dnn-color-tertiary, blue);--border-color:var(--dnn-color-tertiary, blue);--focus-color:var(--color)}:host(.hydrated) button{border:var(--border-size) solid var(--border-color);border-radius:var(--border-radius);padding:var(--padding) calc(var(--padding) * 2);background-color:transparent;background-color:var(--background-color);color:var(--color);outline:none}:host(.hydrated) button:focus,:host(.hydrated) button:hover{box-shadow:0 0 2px 2px var(--focus-color)}:host(:disabled,[disabled]) button{pointer-events:none;opacity:0.5}:host(.small) button{padding:calc(var(--padding) / 2) var(--padding);font-size:0.7em}:host(.large) button{padding:calc(var(--padding) * 1.5) calc(var(--padding) * 3);font-size:1.2em}button{height:100%;width:100%;cursor:pointer}";
|
|
4
|
+
const dnnButtonCss = ":host{--background-color:transparent;--color:#333;--border-size:1px;--border-color:var(--backround-color);--border-radius:var(--dnn-controls-radius, 5px);--padding:var(--dnn-controls-padding, 5px);display:inline-block;width:auto}:host(.disabled){pointer-events:none}:host(.primary){--background-color:var(--dnn-color-primary, blue);--color:var(--dnn-color-primary-contrast, white);--focus-color:var(--background-color)}:host(.primary.reversed){--background-color:var(--dnn-color-primary-contrast, white);--color:var(--dnn-color-primary, blue);--border-color:var(--dnn-color-primary, blue);--focus-color:var(--color)}:host(.secondary){--background-color:var(--dnn-color-secondary, green);--color:var(--dnn-color-secondary-contrast, white);--focus-color:var(--background-color)}:host(.secondary.reversed){--background-color:var(--dnn-color-secondary-contrast, white);--color:var(--dnn-color-secondary, blue);--border-color:var(--dnn-color-secondary, blue);--focus-color:var(--color)}:host(.tertiary){--background-color:var(--dnn-color-tertiary, yellow);--color:var(--dnn-color-tertiary-contrast, black);--focus-color:var(--background-color)}:host(.tertiary.reversed){--background-color:var(--dnn-color-tertiary-contrast, white);--color:var(--dnn-color-tertiary, blue);--border-color:var(--dnn-color-tertiary, blue);--focus-color:var(--color)}:host(.hydrated) button{border:var(--border-size) solid var(--border-color);border-radius:var(--border-radius);padding:var(--padding) calc(var(--padding) * 2);background-color:transparent;background-color:var(--background-color);color:var(--color);outline:none}:host(.hydrated) button:focus,:host(.hydrated) button:hover{-webkit-box-shadow:0 0 2px 2px var(--focus-color);box-shadow:0 0 2px 2px var(--focus-color)}:host(:disabled,[disabled]) button{pointer-events:none;opacity:0.5}:host(.small) button{padding:calc(var(--padding) / 2) var(--padding);font-size:0.7em}:host(.large) button{padding:calc(var(--padding) * 1.5) calc(var(--padding) * 3);font-size:1.2em}button{height:100%;width:100%;cursor:pointer}";
|
|
5
5
|
|
|
6
6
|
let DnnButton = class {
|
|
7
7
|
constructor(hostRef) {
|
|
@@ -80,7 +80,7 @@ let DnnButton = class {
|
|
|
80
80
|
};
|
|
81
81
|
DnnButton.style = dnnButtonCss;
|
|
82
82
|
|
|
83
|
-
const dnnCheckboxCss = ":host{--focus-color:var(--dnn-color-primary, #3792ED);display:inline-flex;align-items:center;gap:0.25rem;margin:3px}button{background-color:transparent;border:0;padding:0;margin:0;outline:none;display:flex;justify-content:center;align-items:center}button svg.undefined{opacity:0.45}button:focus{box-shadow:0 0 2px 2px var(--focus-color)}";
|
|
83
|
+
const dnnCheckboxCss = ":host{--focus-color:var(--dnn-color-primary, #3792ED);display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;gap:0.25rem;margin:3px}button{background-color:transparent;border:0;padding:0;margin:0;outline:none;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}button svg.undefined{opacity:0.45}button:focus{-webkit-box-shadow:0 0 2px 2px var(--focus-color);box-shadow:0 0 2px 2px var(--focus-color)}";
|
|
84
84
|
|
|
85
85
|
let DnnCheckbox = class {
|
|
86
86
|
constructor(hostRef) {
|
|
@@ -129,7 +129,7 @@ let DnnCheckbox = class {
|
|
|
129
129
|
};
|
|
130
130
|
DnnCheckbox.style = dnnCheckboxCss;
|
|
131
131
|
|
|
132
|
-
const dnnChevronCss = ":host{display:inline-block}button{border:none;padding:0px;margin:0px;min-width:15px;min-height:15px;display:flex;justify-content:center;align-items:center;background-color:transparent;outline:none}svg{height:2em;width:2em;transition:all 300ms ease-in-out}button:focus svg,button:hover svg{color:var(--dnn-color-primary)}:host([expanded]) svg{transform:rotate(90deg)}";
|
|
132
|
+
const dnnChevronCss = ":host{display:inline-block}button{border:none;padding:0px;margin:0px;min-width:15px;min-height:15px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;background-color:transparent;outline:none}svg{height:2em;width:2em;-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}button:focus svg,button:hover svg{color:var(--dnn-color-primary)}:host([expanded]) svg{-webkit-transform:rotate(90deg);transform:rotate(90deg)}";
|
|
133
133
|
|
|
134
134
|
let DnnChevron = class {
|
|
135
135
|
constructor(hostRef) {
|
|
@@ -154,18 +154,8 @@ let DnnChevron = class {
|
|
|
154
154
|
};
|
|
155
155
|
DnnChevron.style = dnnChevronCss;
|
|
156
156
|
|
|
157
|
-
const dnnCollapsibleCss = ":host{display:block}
|
|
157
|
+
const dnnCollapsibleCss = ":host{display:block}#container{max-height:0;overflow:hidden;-webkit-transition:max-height 300ms ease-in-out;transition:max-height 300ms ease-in-out}";
|
|
158
158
|
|
|
159
|
-
var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
160
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
161
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
162
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
163
|
-
else
|
|
164
|
-
for (var i = decorators.length - 1; i >= 0; i--)
|
|
165
|
-
if (d = decorators[i])
|
|
166
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
167
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
168
|
-
};
|
|
169
159
|
let DnnCollapsible = class {
|
|
170
160
|
constructor(hostRef) {
|
|
171
161
|
registerInstance(this, hostRef);
|
|
@@ -174,86 +164,51 @@ let DnnCollapsible = class {
|
|
|
174
164
|
this.expanded = false;
|
|
175
165
|
/** Defines the transition time in ms, defaults to 100ms */
|
|
176
166
|
this.transitionDuration = 150;
|
|
177
|
-
this.animating = false;
|
|
178
167
|
}
|
|
179
|
-
|
|
180
|
-
this.animating = true;
|
|
168
|
+
handleHeightChanged() {
|
|
181
169
|
requestAnimationFrame(() => {
|
|
182
|
-
|
|
183
|
-
if (newValue) {
|
|
184
|
-
container.style.height = container.scrollHeight + "px";
|
|
185
|
-
}
|
|
186
|
-
else {
|
|
187
|
-
container.style.height = "0px";
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
requestAnimationFrame(() => {
|
|
191
|
-
this.animating = false;
|
|
192
|
-
this.dnnCollapsibleHeightChanged.emit();
|
|
170
|
+
this.updateSize();
|
|
193
171
|
});
|
|
194
172
|
}
|
|
195
|
-
/**
|
|
173
|
+
/**
|
|
174
|
+
* Updates the component height, use to update after a slot content changes.
|
|
175
|
+
*/
|
|
196
176
|
async updateSize() {
|
|
197
|
-
this.updateComponentSize();
|
|
198
|
-
}
|
|
199
|
-
updateComponentSize() {
|
|
200
177
|
if (this.expanded) {
|
|
201
|
-
this.animating = true;
|
|
202
178
|
requestAnimationFrame(() => {
|
|
203
|
-
|
|
204
|
-
let newHeight = 0;
|
|
205
|
-
container.querySelector('slot').assignedElements().forEach(node => {
|
|
206
|
-
newHeight += node.scrollHeight;
|
|
207
|
-
});
|
|
208
|
-
container.style.height = newHeight + "px";
|
|
179
|
+
this.container.style.maxHeight = `${this.container.scrollHeight}px`;
|
|
209
180
|
});
|
|
181
|
+
setTimeout(() => {
|
|
182
|
+
this.container.style.maxHeight = "none";
|
|
183
|
+
}, this.transitionDuration);
|
|
210
184
|
}
|
|
211
185
|
}
|
|
212
|
-
|
|
186
|
+
handledExpandedChanged(expanded) {
|
|
187
|
+
if (expanded) {
|
|
188
|
+
this.updateSize();
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
requestAnimationFrame(() => {
|
|
192
|
+
this.container.style.maxHeight = `${this.container.scrollHeight}px`;
|
|
193
|
+
requestAnimationFrame(() => {
|
|
194
|
+
this.container.style.maxHeight = "0px";
|
|
195
|
+
});
|
|
196
|
+
});
|
|
197
|
+
}
|
|
213
198
|
setTimeout(() => {
|
|
214
|
-
this.updateComponentSize();
|
|
215
|
-
}, this.transitionDuration);
|
|
216
|
-
}
|
|
217
|
-
handleMutation(mutationList) {
|
|
218
|
-
mutationList.forEach(mutation => {
|
|
219
199
|
requestAnimationFrame(() => {
|
|
220
|
-
|
|
200
|
+
this.dnnCollapsibleHeightChanged.emit();
|
|
221
201
|
});
|
|
222
|
-
});
|
|
223
|
-
}
|
|
224
|
-
componentWillLoad() {
|
|
225
|
-
this.mutationObserver = new MutationObserver((mutationList) => {
|
|
226
|
-
this.handleMutation(mutationList);
|
|
227
|
-
});
|
|
228
|
-
}
|
|
229
|
-
componentDidLoad() {
|
|
230
|
-
const container = this.el.shadowRoot.querySelector('#container');
|
|
231
|
-
container.style.transitionDuration = this.transitionDuration + 'ms';
|
|
232
|
-
// Monitor for content changes and update own height
|
|
233
|
-
const childNodes = [this.el];
|
|
234
|
-
childNodes.forEach(element => {
|
|
235
|
-
this.mutationObserver.observe(element, { attributes: true, characterData: true, childList: true, subtree: true });
|
|
236
|
-
});
|
|
237
|
-
const slot = this.el.shadowRoot.querySelector('slot');
|
|
238
|
-
slot.addEventListener("slotchange", () => {
|
|
239
|
-
this.updateSize();
|
|
240
|
-
});
|
|
241
|
-
}
|
|
242
|
-
disconnectedCallback() {
|
|
243
|
-
this.mutationObserver.disconnect();
|
|
202
|
+
}, this.transitionDuration);
|
|
244
203
|
}
|
|
245
|
-
/*eslint-enable @stencil/own-methods-must-be-private */
|
|
246
204
|
render() {
|
|
247
|
-
return (h(Host, null, h("div", { id: "container" }, h("slot", null))));
|
|
205
|
+
return (h(Host, null, h("div", { id: "container", class: this.expanded && "expanded", ref: el => this.container = el }, h("slot", null))));
|
|
248
206
|
}
|
|
249
207
|
get el() { return getElement(this); }
|
|
250
208
|
static get watchers() { return {
|
|
251
|
-
"expanded": ["
|
|
209
|
+
"expanded": ["handledExpandedChanged"]
|
|
252
210
|
}; }
|
|
253
211
|
};
|
|
254
|
-
__decorate$2([
|
|
255
|
-
Debounce()
|
|
256
|
-
], DnnCollapsible.prototype, "updateSize", null);
|
|
257
212
|
DnnCollapsible.style = dnnCollapsibleCss;
|
|
258
213
|
|
|
259
214
|
/** Color utility class with hsl and rgb converters
|
|
@@ -447,7 +402,7 @@ class ColorInfo {
|
|
|
447
402
|
}
|
|
448
403
|
}
|
|
449
404
|
|
|
450
|
-
const dnnColorPickerCss = ".dnn-color-picker{padding:15px;max-width:400px}.dnn-color-picker .dnn-color-sliders{display:flex;flex-direction:column;min-width:200px}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b{border:1px solid #ccc;padding-bottom:var(--color-box-height, 50%);position:relative;background-color:red}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:linear-gradient(to right, white, red);mix-blend-mode:saturation}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b:after{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;background:linear-gradient(to bottom, white, black);mix-blend-mode:luminosity}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b button{position:absolute;bottom:calc(50% - 4px);left:calc(50% - 4px);width:8px;height:8px;z-index:3;display:block;background:none;border:none;margin-left:-4px;margin-bottom:-4px;padding:7px;background-color:#fff;border-radius:50%}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b button:before{content:\"\";position:absolute;top:-1px;left:-1px;border-radius:50%}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b button:after{content:\"\";position:absolute;top:0px;left:0px;border-radius:50%;width:10px;height:10px;border:2px solid #ccc}.dnn-color-picker .dnn-color-sliders .dnn-color-bar{display:flex;align-items:center;margin-top:15px}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-result{flex-direction:column;width:50px;height:50px;border-radius:50%;background:red}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-hue{flex:auto;margin-left:10px;height:16px;border:1px solid #ccc;position:relative;background:linear-gradient(to right, #f00 0, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 84%, #f00 100%)}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-hue button{width:10px;height:20px;position:absolute;top:-2px;left:calc(50% - 4px);border:0;padding:0;background-color:transparent;padding-left:-8px}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-hue button:before{content:\"\";position:absolute;top:-2px;left:0px;border-radius:3px;width:100%;height:100%;border:1px solid #ccc;background-color:#fff}.dnn-color-picker .dnn-color-fields{display:flex;flex-direction:column;justify-content:space-between}.dnn-color-picker .dnn-color-fields .dnn-color-mode-switch{display:flex;align-items:flex-end;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-color-mode-switch button{background-color:transparent;border:none}.dnn-color-picker .dnn-color-fields .dnn-color-mode-switch button svg{width:3em;height:3em;pointer-events:none;outline:none}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields{display:flex;justify-content:space-evenly}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field{display:flex;flex-direction:column;flex:auto;text-align:center;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field label{padding-bottom:0.25em}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input{border-radius:var(--dnn-button-radius, 3px);border:1px solid #ccc;padding:0.5em;padding-left:1.3em;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input.red{border-color:red}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input.green{border-color:green}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input.blue{border-color:blue}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields{display:flex;justify-content:space-evenly}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields .dnn-hsl-color-field{display:flex;flex-direction:column;flex:auto;text-align:center;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields .dnn-hsl-color-field label{padding-bottom:0.25em}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields .dnn-hsl-color-field input{border-radius:var(--dnn-button-radius, 3px);border:1px solid #ccc;padding:0.5em;padding-left:1.3em;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields{display:flex;justify-content:space-evenly}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field{display:flex;flex-direction:column;flex:auto;text-align:center;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field label{padding-bottom:0.25em}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input{position:relative;border-radius:var(--dnn-button-radius, 3px);border:1px solid #ccc;padding:0.323em;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input input{border:0;padding:0;margin:0;width:100%;height:100%;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input button{position:absolute;height:100%;top:0;right:1em;background-color:transparent;border:0;padding:0;margin:0}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input button svg{min-width:1em}";
|
|
405
|
+
const dnnColorPickerCss = ".dnn-color-picker{padding:15px;max-width:400px}.dnn-color-picker .dnn-color-sliders{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:200px}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b{border:1px solid #ccc;padding-bottom:var(--color-box-height, 50%);position:relative;background-color:red}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:-webkit-gradient(linear, left top, right top, from(white), to(red));background:linear-gradient(to right, white, red);mix-blend-mode:saturation}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b:after{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;background:-webkit-gradient(linear, left top, left bottom, from(white), to(black));background:linear-gradient(to bottom, white, black);mix-blend-mode:luminosity}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b button{position:absolute;bottom:calc(50% - 4px);left:calc(50% - 4px);width:8px;height:8px;z-index:3;display:block;background:none;border:none;margin-left:-4px;margin-bottom:-4px;padding:7px;background-color:#fff;border-radius:50%}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b button:before{content:\"\";position:absolute;top:-1px;left:-1px;border-radius:50%}.dnn-color-picker .dnn-color-sliders .dnn-color-s-b button:after{content:\"\";position:absolute;top:0px;left:0px;border-radius:50%;width:10px;height:10px;border:2px solid #ccc}.dnn-color-picker .dnn-color-sliders .dnn-color-bar{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-top:15px}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-result{-ms-flex-direction:column;flex-direction:column;width:50px;height:50px;border-radius:50%;background:red}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-hue{-ms-flex:auto;flex:auto;margin-left:10px;height:16px;border:1px solid #ccc;position:relative;background:-webkit-gradient(linear, left top, right top, color-stop(0, #f00), color-stop(17%, #ff0), color-stop(33%, #0f0), color-stop(50%, #0ff), color-stop(67%, #00f), color-stop(84%, #f0f), to(#f00));background:linear-gradient(to right, #f00 0, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 84%, #f00 100%)}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-hue button{width:10px;height:20px;position:absolute;top:-2px;left:calc(50% - 4px);border:0;padding:0;background-color:transparent;padding-left:-8px}.dnn-color-picker .dnn-color-sliders .dnn-color-bar .dnn-color-hue button:before{content:\"\";position:absolute;top:-2px;left:0px;border-radius:3px;width:100%;height:100%;border:1px solid #ccc;background-color:#fff}.dnn-color-picker .dnn-color-fields{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}.dnn-color-picker .dnn-color-fields .dnn-color-mode-switch{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-color-mode-switch button{background-color:transparent;border:none}.dnn-color-picker .dnn-color-fields .dnn-color-mode-switch button svg{width:3em;height:3em;pointer-events:none;outline:none}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields{display:-ms-flexbox;display:flex;-ms-flex-pack:space-evenly;justify-content:space-evenly}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:auto;flex:auto;text-align:center;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field label{padding-bottom:0.25em}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input{border-radius:var(--dnn-button-radius, 3px);border:1px solid #ccc;padding:0.5em;padding-left:1.3em;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input.red{border-color:red}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input.green{border-color:green}.dnn-color-picker .dnn-color-fields .dnn-rgb-color-fields .dnn-rgb-color-field input.blue{border-color:blue}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields{display:-ms-flexbox;display:flex;-ms-flex-pack:space-evenly;justify-content:space-evenly}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields .dnn-hsl-color-field{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:auto;flex:auto;text-align:center;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields .dnn-hsl-color-field label{padding-bottom:0.25em}.dnn-color-picker .dnn-color-fields .dnn-hsl-color-fields .dnn-hsl-color-field input{border-radius:var(--dnn-button-radius, 3px);border:1px solid #ccc;padding:0.5em;padding-left:1.3em;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields{display:-ms-flexbox;display:flex;-ms-flex-pack:space-evenly;justify-content:space-evenly}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:auto;flex:auto;text-align:center;padding:0.5em}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field label{padding-bottom:0.25em}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input{position:relative;border-radius:var(--dnn-button-radius, 3px);border:1px solid #ccc;padding:0.323em;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input input{border:0;padding:0;margin:0;width:100%;height:100%;text-align:center}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input button{position:absolute;height:100%;top:0;right:1em;background-color:transparent;border:0;padding:0;margin:0}.dnn-color-picker .dnn-color-fields .dnn-hex-color-fields .dnn-hex-color-field .hex-input button svg{min-width:1em}";
|
|
451
406
|
|
|
452
407
|
/** Reusable DNN UI component to pick a color
|
|
453
408
|
* @copyright Copyright (c) .NET Foundation. All rights reserved.
|
|
@@ -746,7 +701,7 @@ __decorate$1([
|
|
|
746
701
|
], DnnColorPicker.prototype, "colorChangedHandler", null);
|
|
747
702
|
DnnColorPicker.style = dnnColorPickerCss;
|
|
748
703
|
|
|
749
|
-
const dnnDropzoneCss = ":host{--border-color:var(--dnn-color-tertiary-contrast, lightgray);--border-radius:var(--dnn-controls-radius, 5px);--drop-background-color:var(--dnn-color-tertiary, lightblue);display:flex;flex-direction:column;gap:1rem;text-align:center;border:2px dashed var(--border-color);border-radius:var(--border-radius);padding:1rem;transition:all 300ms ease-in-out}:host(.dropping){background-color:var(--drop-background-color)}p{margin:0;padding:0}button{display:flex;justify-content:center;align-items:center;border:0px;margin:0;padding:0;background-color:transparent}button:hover{cursor:pointer}button svg{margin-right:0.5rem}label.upload-file{display:flex;justify-content:center;align-items:center;cursor:pointer}label.upload-file input{display:none}.video-preview{display:flex;flex-direction:column;align-items:center}.video-preview button{margin:1rem}";
|
|
704
|
+
const dnnDropzoneCss = ":host{--border-color:var(--dnn-color-tertiary-contrast, lightgray);--border-radius:var(--dnn-controls-radius, 5px);--drop-background-color:var(--dnn-color-tertiary, lightblue);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:1rem;text-align:center;border:2px dashed var(--border-color);border-radius:var(--border-radius);padding:1rem;-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}:host(.dropping){background-color:var(--drop-background-color)}p{margin:0;padding:0}button{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;border:0px;margin:0;padding:0;background-color:transparent}button:hover{cursor:pointer}button svg{margin-right:0.5rem}label.upload-file{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;cursor:pointer}label.upload-file input{display:none}.video-preview{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.video-preview button{margin:1rem}";
|
|
750
705
|
|
|
751
706
|
let DnnDropzone = class {
|
|
752
707
|
constructor(hostRef) {
|
|
@@ -897,7 +852,27 @@ var CornerType;
|
|
|
897
852
|
CornerType[CornerType["sw"] = 3] = "sw";
|
|
898
853
|
})(CornerType || (CornerType = {}));
|
|
899
854
|
|
|
900
|
-
|
|
855
|
+
function getMovementFromEvent(event, previousTouch) {
|
|
856
|
+
let movementX = 0;
|
|
857
|
+
let movementY = 0;
|
|
858
|
+
if (event instanceof MouseEvent) {
|
|
859
|
+
movementX = event.movementX;
|
|
860
|
+
movementY = event.movementY;
|
|
861
|
+
}
|
|
862
|
+
if (typeof TouchEvent !== "undefined") {
|
|
863
|
+
if (event instanceof TouchEvent) {
|
|
864
|
+
let touch = event.touches[0];
|
|
865
|
+
if (previousTouch != undefined) {
|
|
866
|
+
movementX = touch.pageX - this.previousTouch.pageX;
|
|
867
|
+
movementY = touch.pageY - this.previousTouch.pageY;
|
|
868
|
+
}
|
|
869
|
+
previousTouch = touch;
|
|
870
|
+
}
|
|
871
|
+
}
|
|
872
|
+
return { movementX, movementY };
|
|
873
|
+
}
|
|
874
|
+
|
|
875
|
+
const dnnImageCropperCss = ":host{display:block}canvas{display:none}.view{visibility:hidden;opacity:0;height:0;overflow:hidden;-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}.view.visible{visibility:visible;opacity:1;height:initial;overflow:visible}.view .cropper{position:relative;width:100%}.view .cropper img{width:100%;display:block;margin:0 auto}.view .cropper .backdrop{-webkit-backdrop-filter:saturate(0.5);backdrop-filter:saturate(0.5);-webkit-backdrop-filter:brightness(0.5);backdrop-filter:brightness(0.5);position:absolute;left:0;top:0;width:100%;height:100%}.view .cropper .crop{position:absolute;top:0;left:0;width:100%;height:100%;outline:2px dashed white;-webkit-box-shadow:black 0 0 0px 2px;box-shadow:black 0 0 0px 2px;-webkit-backdrop-filter:saturate(2);backdrop-filter:saturate(2);-webkit-backdrop-filter:brightness(2);backdrop-filter:brightness(2);cursor:move}.view .cropper .crop>div{width:20px;height:20px;background-color:white;border:2px solid rgba(0, 0, 0, 0.5);position:absolute}.view .cropper .crop>div.nw,.view .cropper .crop>div.ne{top:-17px}.view .cropper .crop>div.ne,.view .cropper .crop>div.se{right:-17px}.view .cropper .crop>div.se,.view .cropper .crop>div.sw{bottom:-17px}.view .cropper .crop>div.sw,.view .cropper .crop>div.nw{left:-17px}.view .cropper .crop>div.nw,.view .cropper .crop>div.se{cursor:nwse-resize}.view .cropper .crop>div.ne,.view .cropper .crop>div.sw{cursor:nesw-resize}dnn-modal{--max-width:512px}";
|
|
901
876
|
|
|
902
877
|
let DnnImageCropper = class {
|
|
903
878
|
constructor(hostRef) {
|
|
@@ -991,7 +966,7 @@ let DnnImageCropper = class {
|
|
|
991
966
|
const wantedRatio = this.width / this.height;
|
|
992
967
|
const cropRect = this.crop.getBoundingClientRect();
|
|
993
968
|
const imageRect = this.image.getBoundingClientRect();
|
|
994
|
-
let { movementX, movementY } = this.
|
|
969
|
+
let { movementX, movementY } = getMovementFromEvent(event, this.previousTouch);
|
|
995
970
|
if (Math.abs(movementX) < Math.abs(movementY)) {
|
|
996
971
|
orientation = "vertical";
|
|
997
972
|
}
|
|
@@ -1095,7 +1070,7 @@ let DnnImageCropper = class {
|
|
|
1095
1070
|
if (!this.isMouseStillInTarget(ev)) {
|
|
1096
1071
|
return;
|
|
1097
1072
|
}
|
|
1098
|
-
let { movementX, movementY } = this.
|
|
1073
|
+
let { movementX, movementY } = getMovementFromEvent(ev, this.previousTouch);
|
|
1099
1074
|
let newLeft = this.crop.offsetLeft + movementX;
|
|
1100
1075
|
let newTop = this.crop.offsetTop + movementY;
|
|
1101
1076
|
var imageRect = this.image.getBoundingClientRect();
|
|
@@ -1117,7 +1092,9 @@ let DnnImageCropper = class {
|
|
|
1117
1092
|
};
|
|
1118
1093
|
}
|
|
1119
1094
|
componentDidLoad() {
|
|
1120
|
-
|
|
1095
|
+
requestAnimationFrame(() => {
|
|
1096
|
+
this.setView("noPictureView");
|
|
1097
|
+
});
|
|
1121
1098
|
}
|
|
1122
1099
|
setView(newView) {
|
|
1123
1100
|
const views = this.host.shadowRoot.querySelectorAll(".view");
|
|
@@ -1222,25 +1199,6 @@ let DnnImageCropper = class {
|
|
|
1222
1199
|
}
|
|
1223
1200
|
return { top, left };
|
|
1224
1201
|
}
|
|
1225
|
-
getMouvementFromEvent(event) {
|
|
1226
|
-
let movementX = 0;
|
|
1227
|
-
let movementY = 0;
|
|
1228
|
-
if (event instanceof MouseEvent) {
|
|
1229
|
-
movementX = event.movementX;
|
|
1230
|
-
movementY = event.movementY;
|
|
1231
|
-
}
|
|
1232
|
-
if (typeof TouchEvent !== "undefined") {
|
|
1233
|
-
if (event instanceof TouchEvent) {
|
|
1234
|
-
let touch = event.touches[0];
|
|
1235
|
-
if (this.previousTouch != undefined) {
|
|
1236
|
-
movementX = touch.pageX - this.previousTouch.pageX;
|
|
1237
|
-
movementY = touch.pageY - this.previousTouch.pageY;
|
|
1238
|
-
}
|
|
1239
|
-
this.previousTouch = touch;
|
|
1240
|
-
}
|
|
1241
|
-
}
|
|
1242
|
-
return { movementX, movementY };
|
|
1243
|
-
}
|
|
1244
1202
|
isMouseStillInTarget(event) {
|
|
1245
1203
|
var inside = false;
|
|
1246
1204
|
let mouseX;
|
|
@@ -1287,7 +1245,7 @@ let DnnImageCropper = class {
|
|
|
1287
1245
|
};
|
|
1288
1246
|
DnnImageCropper.style = dnnImageCropperCss;
|
|
1289
1247
|
|
|
1290
|
-
const dnnModalCss = ":host{display:block}:host .overlay{background-color:rgba(0, 0, 0, 0.5);position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;display:flex;justify-content:center;align-items:center;backdrop-filter:blur(2px);transition:all 300ms ease-in-out;visibility:hidden;opacity:0}:host .overlay .modal{max-width:var(--max-width, 1200px);background-color:white;padding:30px;transform:scale(2);transition:all 300ms ease-in-out;z-index:2;position:relative;margin:10%;max-height:80%;border-radius:var(--dnn-controls-radius, 5px);box-shadow:10px 10px 20px 0 rgba(0, 0, 0, 0.5);display:block}:host .overlay .modal .close{position:absolute;background-color:white;border:2px solid white;border-radius:50%;padding:0;margin:0;top:-12px;right:-12px;outline:none;display:flex;justify-content:center;align-items:center}:host .overlay .modal .close:focus,:host .overlay .modal .close:hover{box-shadow:0 0 2px 2px var(--dnn-color-primary, blue)}:host .overlay .modal .close svg{width:24px;height:24px;color:grey}:host .overlay.visible{visibility:visible;opacity:1}:host .overlay.visible .modal{transform:scale(1);box-shadow:4px 4px 10px 0px rgba(0, 0, 0, 0.5);display:block}";
|
|
1248
|
+
const dnnModalCss = ":host{display:block}:host .overlay{background-color:rgba(0, 0, 0, 0.5);position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out;visibility:hidden;opacity:0}:host .overlay .modal{max-width:var(--max-width, 1200px);background-color:white;padding:30px;-webkit-transform:scale(2);transform:scale(2);-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out;z-index:2;position:relative;margin:10%;max-height:80%;border-radius:var(--dnn-controls-radius, 5px);-webkit-box-shadow:10px 10px 20px 0 rgba(0, 0, 0, 0.5);box-shadow:10px 10px 20px 0 rgba(0, 0, 0, 0.5);display:block}:host .overlay .modal .close{position:absolute;background-color:white;border:2px solid white;border-radius:50%;padding:0;margin:0;top:-12px;right:-12px;outline:none;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host .overlay .modal .close:focus,:host .overlay .modal .close:hover{-webkit-box-shadow:0 0 2px 2px var(--dnn-color-primary, blue);box-shadow:0 0 2px 2px var(--dnn-color-primary, blue)}:host .overlay .modal .close svg{width:24px;height:24px;color:grey}:host .overlay.visible{visibility:visible;opacity:1}:host .overlay.visible .modal{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:4px 4px 10px 0px rgba(0, 0, 0, 0.5);box-shadow:4px 4px 10px 0px rgba(0, 0, 0, 0.5);display:block}";
|
|
1291
1249
|
|
|
1292
1250
|
let DnnModal = class {
|
|
1293
1251
|
constructor(hostRef) {
|
|
@@ -1340,7 +1298,7 @@ let DnnModal = class {
|
|
|
1340
1298
|
};
|
|
1341
1299
|
DnnModal.style = dnnModalCss;
|
|
1342
1300
|
|
|
1343
|
-
const dnnSearchboxCss = ":host{position:relative;display:flex;justify-content:space-between;--background-color:transparent;--color:#333;--border-size:1px;--border-color:grey;--border-active-color:black;--border-radius:var(--dnn-controls-radius, 5px);--padding:var(--dnn-controls-padding, 5px);--focus-color:var(--dnn-color-primary, blue)}:host input{width:100%;border:var(--border-size) solid var(--border-color);outline:none;border-radius:var(--border-radius);padding:var(--padding);padding-right:32px;transition:all 300ms ease-in-out}:host input:focus,:host input:hover{outline:none;box-shadow:0 0 2px 2px var(--focus-color)}:host svg{position:absolute;top:0;right:0;height:100
|
|
1301
|
+
const dnnSearchboxCss = ":host{position:relative;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;--background-color:transparent;--color:#333;--border-size:1px;--border-color:grey;--border-active-color:black;--border-radius:var(--dnn-controls-radius, 5px);--padding:var(--dnn-controls-padding, 5px);--focus-color:var(--dnn-color-primary, blue)}:host input{width:100%;border:var(--border-size) solid var(--border-color);outline:none;border-radius:var(--border-radius);padding:var(--padding);padding-right:32px;-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}:host input:focus,:host input:hover{outline:none;-webkit-box-shadow:0 0 2px 2px var(--focus-color);box-shadow:0 0 2px 2px var(--focus-color)}:host svg{position:absolute;top:0;right:0;height:100%;-webkit-transform:scale(0.7);transform:scale(0.7);fill:var(--color);outline:var(--color);color:var(--color);-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}:host button{background:transparent;border:0;margin:0;padding:0}:host button:focus svg,:host button:hover svg{fill:var(--focus-color);outline:var(--focus-color);color:var(--focus-color)}";
|
|
1344
1302
|
|
|
1345
1303
|
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1346
1304
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
@@ -1450,7 +1408,7 @@ let DnnTab = class {
|
|
|
1450
1408
|
};
|
|
1451
1409
|
DnnTab.style = dnnTabCss;
|
|
1452
1410
|
|
|
1453
|
-
const dnnTabsCss = ":host{display:block;--color-background:var(--dnn-color-secondary-dark, lightgray);--color-text:var(--dnn-color-secondary-contrast, #333);--color-visible:var(--dnn-color-primary, #3792ED);--color-visible-text:var(--dnn-color-primary-contrast, #FFF);--color-focus:var(--dnn-color-primary, #3792ed)}.tabTitles{display:flex;background-color:var(--color-background);color:var(--color-text)}.tabTitles button{padding:0.5rem 1rem;border:0;margin:0;background-color:transparent}.tabTitles button.visible{background-color:var(--color-visible);color:var(--color-bisible-text)}.tabTitles button:focus,.tabTitles button:hover{outline:none;box-shadow:0 0 2px 2px var(--color-focus)}.currentTab{border:1px solid var(--color-background);padding:1rem}";
|
|
1411
|
+
const dnnTabsCss = ":host{display:block;--color-background:var(--dnn-color-secondary-dark, lightgray);--color-text:var(--dnn-color-secondary-contrast, #333);--color-visible:var(--dnn-color-primary, #3792ED);--color-visible-text:var(--dnn-color-primary-contrast, #FFF);--color-focus:var(--dnn-color-primary, #3792ed)}.tabTitles{display:-ms-flexbox;display:flex;background-color:var(--color-background);color:var(--color-text)}.tabTitles button{padding:0.5rem 1rem;border:0;margin:0;background-color:transparent}.tabTitles button.visible{background-color:var(--color-visible);color:var(--color-bisible-text)}.tabTitles button:focus,.tabTitles button:hover{outline:none;-webkit-box-shadow:0 0 2px 2px var(--color-focus);box-shadow:0 0 2px 2px var(--color-focus)}.currentTab{border:1px solid var(--color-background);padding:1rem}";
|
|
1454
1412
|
|
|
1455
1413
|
let DnnTabs = class {
|
|
1456
1414
|
constructor(hostRef) {
|
|
@@ -1459,8 +1417,10 @@ let DnnTabs = class {
|
|
|
1459
1417
|
this.selectedTabTitle = "";
|
|
1460
1418
|
}
|
|
1461
1419
|
componentDidLoad() {
|
|
1462
|
-
|
|
1463
|
-
|
|
1420
|
+
requestAnimationFrame(() => {
|
|
1421
|
+
this.updateTitles();
|
|
1422
|
+
this.showFirstTab();
|
|
1423
|
+
});
|
|
1464
1424
|
}
|
|
1465
1425
|
getTabs() {
|
|
1466
1426
|
return this.component.shadowRoot.querySelector("slot").assignedElements();
|
|
@@ -1491,7 +1451,7 @@ let DnnTabs = class {
|
|
|
1491
1451
|
};
|
|
1492
1452
|
DnnTabs.style = dnnTabsCss;
|
|
1493
1453
|
|
|
1494
|
-
const dnnToggleCss = ":host{display:inline-block;outline:none;cursor:pointer}button{height:1.5em;width:2.5em;outline:none;background-color:var(--background, #888);border:0;border-radius:var(--border-radius, var(--dnn-controls-radius, 0.75em));padding:0.1em;position:relative;margin:0;transition:background-color 300ms ease-in-out;position:relative;cursor:pointer}button:hover,button:focus{box-shadow:0 0 2px 2px var(--dnn-color-primary)}button.checked{background-color:var(--background-checked, var(--dnn-color-primary, blue))}button.checked .handle{left:calc(1em + 4px)}button:disabled{opacity:0.5;cursor:not-allowed;box-shadow:none}button .handle{transition:all 300ms ease-in-out;background-color:white;width:1em;height:1em;border-radius:var(--dnn-controls-radius, 50%);position:absolute;top:calc(50% - 0.5em);left:2px}";
|
|
1454
|
+
const dnnToggleCss = ":host{display:inline-block;outline:none;cursor:pointer}button{height:1.5em;width:2.5em;outline:none;background-color:var(--background, #888);border:0;border-radius:var(--border-radius, var(--dnn-controls-radius, 0.75em));padding:0.1em;position:relative;margin:0;-webkit-transition:background-color 300ms ease-in-out;transition:background-color 300ms ease-in-out;position:relative;cursor:pointer}button:hover,button:focus{-webkit-box-shadow:0 0 2px 2px var(--dnn-color-primary);box-shadow:0 0 2px 2px var(--dnn-color-primary)}button.checked{background-color:var(--background-checked, var(--dnn-color-primary, blue))}button.checked .handle{left:calc(1em + 4px)}button:disabled{opacity:0.5;cursor:not-allowed;-webkit-box-shadow:none;box-shadow:none}button .handle{-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out;background-color:white;width:1em;height:1em;border-radius:var(--dnn-controls-radius, 50%);position:absolute;top:calc(50% - 0.5em);left:2px}";
|
|
1495
1455
|
|
|
1496
1456
|
let DnnToggle = class {
|
|
1497
1457
|
constructor(hostRef) {
|
|
@@ -1519,45 +1479,295 @@ let DnnToggle = class {
|
|
|
1519
1479
|
};
|
|
1520
1480
|
DnnToggle.style = dnnToggleCss;
|
|
1521
1481
|
|
|
1522
|
-
const dnnTreeviewItemCss = ":host{display:flex;overflow:
|
|
1482
|
+
const dnnTreeviewItemCss = ":host{display:-ms-flexbox;display:flex;overflow:visible}.expander{width:24px;height:24px}.expander button{-webkit-transition:all 150ms ease-in-out;transition:all 150ms ease-in-out;background-color:transparent;border:none;padding:0;margin:0;height:1em;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;cursor:pointer;position:relative;top:2px}.expander button svg :first-child{-webkit-transition:all 150ms ease-in-out;transition:all 150ms ease-in-out;fill:white;stroke:black}.expander.expanded button{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.expander.expanded button svg :first-child{fill:black;stroke:black}div.item .item-slot{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.25em;min-height:24px}div.item div.children{overflow:hidden;height:0;-webkit-transition:all 150ms ease-in-out;transition:all 150ms ease-in-out}";
|
|
1523
1483
|
|
|
1524
1484
|
let DnnTreeviewItem = class {
|
|
1525
1485
|
constructor(hostRef) {
|
|
1526
1486
|
registerInstance(this, hostRef);
|
|
1527
|
-
|
|
1487
|
+
this.userExpanded = createEvent(this, "userExpanded", 3);
|
|
1488
|
+
this.userCollapsed = createEvent(this, "userCollapsed", 3);
|
|
1489
|
+
/** Defines if the current node is expanded. */
|
|
1528
1490
|
this.expanded = false;
|
|
1491
|
+
/** Manages state for whether or not item has children. */
|
|
1529
1492
|
this.hasChildren = false;
|
|
1530
1493
|
}
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
if (count > 0) {
|
|
1535
|
-
this.hasChildren = true;
|
|
1536
|
-
}
|
|
1537
|
-
if (this.expanded) {
|
|
1494
|
+
/** Watch expanded Prop */
|
|
1495
|
+
watchExpanded(expanded) {
|
|
1496
|
+
if (expanded) {
|
|
1538
1497
|
this.expander.classList.add("expanded");
|
|
1539
|
-
this.collapsible.expanded =
|
|
1540
|
-
|
|
1541
|
-
this.collapsible.expanded = true;
|
|
1542
|
-
}, 300);
|
|
1498
|
+
this.collapsible.expanded = true;
|
|
1499
|
+
return;
|
|
1543
1500
|
}
|
|
1501
|
+
this.expander.classList.remove("expanded");
|
|
1502
|
+
this.collapsible.expanded = false;
|
|
1503
|
+
}
|
|
1504
|
+
componentDidLoad() {
|
|
1505
|
+
requestAnimationFrame(() => {
|
|
1506
|
+
const child = this.childElement.children[0];
|
|
1507
|
+
const count = child.assignedElements().length;
|
|
1508
|
+
if (count > 0) {
|
|
1509
|
+
this.hasChildren = true;
|
|
1510
|
+
}
|
|
1511
|
+
if (this.expanded) {
|
|
1512
|
+
this.expander.classList.add("expanded");
|
|
1513
|
+
this.collapsible.expanded = false;
|
|
1514
|
+
setTimeout(() => {
|
|
1515
|
+
this.collapsible.expanded = true;
|
|
1516
|
+
}, 300);
|
|
1517
|
+
}
|
|
1518
|
+
});
|
|
1544
1519
|
}
|
|
1545
1520
|
toggleCollapse() {
|
|
1546
1521
|
this.expanded = !this.expanded;
|
|
1547
1522
|
if (this.expanded) {
|
|
1548
1523
|
this.expander.classList.add("expanded");
|
|
1524
|
+
this.userExpanded.emit();
|
|
1549
1525
|
return;
|
|
1550
1526
|
}
|
|
1551
1527
|
this.expander.classList.remove("expanded");
|
|
1528
|
+
this.userCollapsed.emit();
|
|
1552
1529
|
}
|
|
1553
1530
|
render() {
|
|
1554
1531
|
return (h(Host, null, h("div", { class: "expander", ref: el => this.expander = el }, this.hasChildren &&
|
|
1555
|
-
h("button", { onClick: () => this.toggleCollapse() }, h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#000000" }, h("path", { d: "M10 17l5-5-5-5v10z" }), h("path", { d: "M0 24V0h24v24H0z", fill: "none" })))), h("div", { class: "item" }, h("div", { class: "item-slot" }, h("slot", null)), h("dnn-collapsible", { ref: el => this.collapsible = el, expanded: this.expanded }, h("div", { ref: el => this.
|
|
1532
|
+
h("button", { onClick: () => this.toggleCollapse() }, h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#000000" }, h("path", { d: "M10 17l5-5-5-5v10z" }), h("path", { d: "M0 24V0h24v24H0z", fill: "none" })))), h("div", { class: "item" }, h("div", { class: "item-slot" }, h("slot", null)), h("dnn-collapsible", { ref: el => this.collapsible = el, expanded: this.expanded }, h("div", { ref: el => this.childElement = el }, h("slot", { name: "children" }))))));
|
|
1556
1533
|
}
|
|
1557
1534
|
get el() { return getElement(this); }
|
|
1535
|
+
static get watchers() { return {
|
|
1536
|
+
"expanded": ["watchExpanded"]
|
|
1537
|
+
}; }
|
|
1558
1538
|
};
|
|
1559
1539
|
DnnTreeviewItem.style = dnnTreeviewItemCss;
|
|
1560
1540
|
|
|
1561
|
-
|
|
1541
|
+
const dnnVerticalOverflowMenuCss = ":host{display:block;--background-color:var(--dnn-color-primary-contrast, white);--foreground-color:var(--dnn-color-primary, blue);--text-color:#222}.menu-container{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center;background-color:var(--background-color);color:var(--text-color)}.menu-container .menu{margin:0.5em;display:-ms-flexbox;display:flex;gap:1em;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center;white-space:nowrap;width:100%}.menu-container .overflow{margin-left:auto;position:relative}.menu-container .overflow button{cursor:pointer;padding:0;margin:0;background-color:transparent;border:none}.menu-container .overflow button svg{fill:var(--foreground-color)}.menu-container .overflow .dropdown{position:absolute;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;white-space:nowrap;right:0;-webkit-transition:100ms ease-in-out;transition:100ms ease-in-out;height:0;overflow:hidden}.menu-container .overflow .dropdown.visible{padding:1em;gap:0.5em;background-color:var(--background-color);-webkit-box-shadow:2px 2px 4px rgba(0, 0, 0, 0.7);box-shadow:2px 2px 4px rgba(0, 0, 0, 0.7)}";
|
|
1542
|
+
|
|
1543
|
+
let DnnVerticalOverflowMenu = class {
|
|
1544
|
+
constructor(hostRef) {
|
|
1545
|
+
registerInstance(this, hostRef);
|
|
1546
|
+
this.showDropdownButton = false;
|
|
1547
|
+
this.showDropdownMenu = false;
|
|
1548
|
+
this.previousMenuWidth = 0;
|
|
1549
|
+
}
|
|
1550
|
+
componentDidRender() {
|
|
1551
|
+
requestAnimationFrame(() => {
|
|
1552
|
+
this.moveItemsToDropDownIfNecessery();
|
|
1553
|
+
this.resizeObserver = new ResizeObserver(entries => {
|
|
1554
|
+
for (let entry of entries) {
|
|
1555
|
+
if (entry.contentRect.width < this.previousMenuWidth) {
|
|
1556
|
+
this.moveItemsToDropDownIfNecessery();
|
|
1557
|
+
}
|
|
1558
|
+
if (this.previousMenuWidth > 0 && entry.contentRect.width > this.previousMenuWidth) {
|
|
1559
|
+
this.moveItemsToMenuIfPossible();
|
|
1560
|
+
}
|
|
1561
|
+
this.previousMenuWidth = entry.contentRect.width;
|
|
1562
|
+
}
|
|
1563
|
+
});
|
|
1564
|
+
this.resizeObserver.observe(this.element);
|
|
1565
|
+
});
|
|
1566
|
+
}
|
|
1567
|
+
moveItemsToDropDownIfNecessery() {
|
|
1568
|
+
const menuItems = Array.from(this.menu.querySelector("slot").assignedElements());
|
|
1569
|
+
const availableWidth = this.menu.getBoundingClientRect().width;
|
|
1570
|
+
let neededWidth = parseFloat(getComputedStyle(this.element).fontSize) * 2;
|
|
1571
|
+
menuItems.forEach(item => neededWidth += this.getFullWidth(item));
|
|
1572
|
+
neededWidth += (menuItems.length - 1) * parseFloat(getComputedStyle(this.element).fontSize);
|
|
1573
|
+
if (neededWidth > availableWidth) {
|
|
1574
|
+
this.showDropdownButton = true;
|
|
1575
|
+
var lastItem = menuItems[menuItems.length - 1];
|
|
1576
|
+
if (this.dropdown == undefined) {
|
|
1577
|
+
return;
|
|
1578
|
+
}
|
|
1579
|
+
lastItem.slot = "dropdown";
|
|
1580
|
+
this.moveItemsToDropDownIfNecessery();
|
|
1581
|
+
}
|
|
1582
|
+
}
|
|
1583
|
+
moveItemsToMenuIfPossible() {
|
|
1584
|
+
if (this.dropdown == undefined || !this.dropdown.hasChildNodes()) {
|
|
1585
|
+
return;
|
|
1586
|
+
}
|
|
1587
|
+
const menuItems = Array.from(this.menu.querySelector("slot").assignedElements());
|
|
1588
|
+
const availableWidth = this.menu.getBoundingClientRect().width;
|
|
1589
|
+
let neededWidth = parseFloat(getComputedStyle(this.element).fontSize) * 2;
|
|
1590
|
+
neededWidth += (menuItems.length - 1) * parseFloat(getComputedStyle(this.element).fontSize);
|
|
1591
|
+
menuItems.forEach(item => neededWidth += this.getFullWidth(item));
|
|
1592
|
+
const firstItem = this.dropdown.querySelector("slot").assignedElements()[0];
|
|
1593
|
+
if (firstItem != undefined) {
|
|
1594
|
+
neededWidth += this.getFullWidth(firstItem);
|
|
1595
|
+
}
|
|
1596
|
+
if (neededWidth < availableWidth) {
|
|
1597
|
+
if (firstItem != undefined) {
|
|
1598
|
+
firstItem.slot = "";
|
|
1599
|
+
}
|
|
1600
|
+
if (firstItem == undefined) {
|
|
1601
|
+
this.dropdown.classList.remove("visible");
|
|
1602
|
+
this.showDropdownMenu = false;
|
|
1603
|
+
this.showDropdownButton = false;
|
|
1604
|
+
}
|
|
1605
|
+
}
|
|
1606
|
+
}
|
|
1607
|
+
getFullWidth(item) {
|
|
1608
|
+
var width = item.getBoundingClientRect().width;
|
|
1609
|
+
var styles = getComputedStyle(item);
|
|
1610
|
+
width += parseFloat(styles.marginLeft);
|
|
1611
|
+
width += parseFloat(styles.marginRight);
|
|
1612
|
+
width += parseFloat(styles.paddingLeft);
|
|
1613
|
+
width += parseFloat(styles.paddingRight);
|
|
1614
|
+
return width;
|
|
1615
|
+
}
|
|
1616
|
+
toggleOverflowMenu() {
|
|
1617
|
+
this.showDropdownMenu = !this.showDropdownMenu;
|
|
1618
|
+
if (this.showDropdownMenu) {
|
|
1619
|
+
this.dropdown.classList.add("visible");
|
|
1620
|
+
let contentHeight = 0;
|
|
1621
|
+
const items = Array.from(this.dropdown.querySelector("slot").assignedElements());
|
|
1622
|
+
items.forEach(item => contentHeight += item.getBoundingClientRect().height);
|
|
1623
|
+
var emHeight = parseFloat(getComputedStyle(this.dropdown).fontSize) * 0.5;
|
|
1624
|
+
var additionalHeight = emHeight * (this.dropdown.children.length - 1);
|
|
1625
|
+
contentHeight += additionalHeight;
|
|
1626
|
+
this.dropdown.style.height = `${contentHeight}px`;
|
|
1627
|
+
const dismissMenu = (e) => {
|
|
1628
|
+
const buttonRect = this.button.getBoundingClientRect();
|
|
1629
|
+
if (e.clientX < buttonRect.left ||
|
|
1630
|
+
e.clientX > buttonRect.right ||
|
|
1631
|
+
e.clientY < buttonRect.top ||
|
|
1632
|
+
e.clientY > buttonRect.bottom) {
|
|
1633
|
+
this.toggleOverflowMenu();
|
|
1634
|
+
}
|
|
1635
|
+
document.removeEventListener("click", dismissMenu);
|
|
1636
|
+
};
|
|
1637
|
+
setTimeout(() => {
|
|
1638
|
+
document.addEventListener("click", dismissMenu, false);
|
|
1639
|
+
}, 100);
|
|
1640
|
+
}
|
|
1641
|
+
else {
|
|
1642
|
+
this.dropdown.classList.remove("visible");
|
|
1643
|
+
this.dropdown.style.height = "0px";
|
|
1644
|
+
}
|
|
1645
|
+
}
|
|
1646
|
+
render() {
|
|
1647
|
+
return (h(Host, null, h("div", { class: "menu-container" }, h("div", { class: "menu", ref: el => this.menu = el }, h("slot", null)), this.showDropdownButton &&
|
|
1648
|
+
h("div", { class: "overflow" }, h("button", { ref: el => this.button = el, class: "icon", onClick: () => this.toggleOverflowMenu() }, h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#000000" }, h("path", { d: "M0 0h24v24H0z", fill: "none" }), h("path", { d: "M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z" }))), h("div", { class: "dropdown", ref: el => this.dropdown = el }, h("slot", { name: "dropdown" }))))));
|
|
1649
|
+
}
|
|
1650
|
+
get element() { return getElement(this); }
|
|
1651
|
+
};
|
|
1652
|
+
DnnVerticalOverflowMenu.style = dnnVerticalOverflowMenuCss;
|
|
1653
|
+
|
|
1654
|
+
const dnnVerticalSplitviewCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;margin:0 auto;position:relative;--left-pane-background-color:transparent;--right-pane-background-color:transparent}button{border:none;margin:0;padding:0;cursor:ew-resize;position:absolute;height:100%;background-color:transparent}button.transition{-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}.pane{overflow-y:auto}.pane.transition{-webkit-transition:all 300ms ease-in-out;transition:all 300ms ease-in-out}.pane.left{background-color:var(--left-pane-background-color)}.pane.right{background-color:var(--right-pane-background-color);-ms-flex-positive:1;flex-grow:1}";
|
|
1655
|
+
|
|
1656
|
+
let DnnVerticalSplitview = class {
|
|
1657
|
+
constructor(hostRef) {
|
|
1658
|
+
registerInstance(this, hostRef);
|
|
1659
|
+
this.widthChanged = createEvent(this, "widthChanged", 7);
|
|
1660
|
+
/** The width of the splitter area. */
|
|
1661
|
+
this.splitterWidth = 16;
|
|
1662
|
+
/** The percentage position of the splitter in the container. */
|
|
1663
|
+
this.splitWidthPercentage = 30;
|
|
1664
|
+
this.leftWidth = 0;
|
|
1665
|
+
this.rightWidth = 0;
|
|
1666
|
+
}
|
|
1667
|
+
/** Sets the width percentage of the divider */
|
|
1668
|
+
async setSplitWidthPercentage(newWidth) {
|
|
1669
|
+
const panes = this.element.shadowRoot.querySelectorAll(".pane");
|
|
1670
|
+
requestAnimationFrame(() => {
|
|
1671
|
+
panes.forEach(pane => pane.classList.add("transition"));
|
|
1672
|
+
this.splitter.classList.add("transition");
|
|
1673
|
+
requestAnimationFrame(() => {
|
|
1674
|
+
const fullWidth = this.element.getBoundingClientRect().width;
|
|
1675
|
+
let newLeft = fullWidth * newWidth / 100;
|
|
1676
|
+
if (newLeft < 0) {
|
|
1677
|
+
newLeft = 0;
|
|
1678
|
+
}
|
|
1679
|
+
if (newLeft > fullWidth) {
|
|
1680
|
+
newLeft = fullWidth;
|
|
1681
|
+
}
|
|
1682
|
+
this.leftWidth = newLeft;
|
|
1683
|
+
this.rightWidth = fullWidth - newLeft;
|
|
1684
|
+
setTimeout(() => {
|
|
1685
|
+
panes.forEach(pane => pane.classList.remove("transition"));
|
|
1686
|
+
this.splitter.classList.remove("transition");
|
|
1687
|
+
}, 300);
|
|
1688
|
+
});
|
|
1689
|
+
});
|
|
1690
|
+
}
|
|
1691
|
+
/** Gets the current divider position percentage. */
|
|
1692
|
+
async getSplitWidthPercentage() {
|
|
1693
|
+
const fullWidth = this.element.getBoundingClientRect().width;
|
|
1694
|
+
return this.leftWidth / fullWidth;
|
|
1695
|
+
}
|
|
1696
|
+
componentDidLoad() {
|
|
1697
|
+
requestAnimationFrame(() => {
|
|
1698
|
+
const fullWidth = this.element.getBoundingClientRect().width;
|
|
1699
|
+
this.leftWidth = fullWidth * this.splitWidthPercentage / 100;
|
|
1700
|
+
this.rightWidth = fullWidth - this.leftWidth;
|
|
1701
|
+
this.widthChanged.emit(this.splitWidthPercentage);
|
|
1702
|
+
});
|
|
1703
|
+
}
|
|
1704
|
+
handleMouseDown(event) {
|
|
1705
|
+
event.preventDefault();
|
|
1706
|
+
const handleDrag = (ev) => {
|
|
1707
|
+
let { movementX } = getMovementFromEvent(ev, this.previousTouch);
|
|
1708
|
+
let fullWidth = this.element.getBoundingClientRect().width;
|
|
1709
|
+
let newLeft = this.leftWidth + movementX;
|
|
1710
|
+
if (newLeft < 0) {
|
|
1711
|
+
newLeft = 0;
|
|
1712
|
+
}
|
|
1713
|
+
if (newLeft > fullWidth) {
|
|
1714
|
+
newLeft = fullWidth;
|
|
1715
|
+
}
|
|
1716
|
+
this.leftWidth = newLeft;
|
|
1717
|
+
this.rightWidth = fullWidth - newLeft;
|
|
1718
|
+
};
|
|
1719
|
+
const handleDragFinished = () => {
|
|
1720
|
+
document.removeEventListener("mousemove", handleDrag);
|
|
1721
|
+
document.removeEventListener("touchmove", handleDrag);
|
|
1722
|
+
const fullWidth = this.element.getBoundingClientRect().width;
|
|
1723
|
+
const newPercentage = this.leftWidth / fullWidth * 100;
|
|
1724
|
+
this.widthChanged.emit(newPercentage);
|
|
1725
|
+
};
|
|
1726
|
+
document.addEventListener("mouseup", handleDragFinished);
|
|
1727
|
+
document.addEventListener("touchend", handleDragFinished);
|
|
1728
|
+
document.addEventListener("mousemove", handleDrag);
|
|
1729
|
+
document.addEventListener("touchmove", handleDrag);
|
|
1730
|
+
}
|
|
1731
|
+
handleKeyDown(e) {
|
|
1732
|
+
let movementX = 0;
|
|
1733
|
+
switch (e.key) {
|
|
1734
|
+
case "ArrowLeft":
|
|
1735
|
+
movementX = -10;
|
|
1736
|
+
break;
|
|
1737
|
+
case "ArrowRight":
|
|
1738
|
+
movementX = 10;
|
|
1739
|
+
break;
|
|
1740
|
+
default:
|
|
1741
|
+
return;
|
|
1742
|
+
}
|
|
1743
|
+
if (e.shiftKey) {
|
|
1744
|
+
movementX = movementX * 10;
|
|
1745
|
+
}
|
|
1746
|
+
const fullWidth = this.element.getBoundingClientRect().width;
|
|
1747
|
+
let newLeft = this.leftWidth + movementX;
|
|
1748
|
+
if (newLeft < 0) {
|
|
1749
|
+
newLeft = 0;
|
|
1750
|
+
}
|
|
1751
|
+
if (newLeft > fullWidth) {
|
|
1752
|
+
newLeft = fullWidth;
|
|
1753
|
+
}
|
|
1754
|
+
this.leftWidth = newLeft;
|
|
1755
|
+
this.rightWidth = fullWidth - this.leftWidth;
|
|
1756
|
+
}
|
|
1757
|
+
render() {
|
|
1758
|
+
return (h(Host, null, h("div", { class: "left pane", style: {
|
|
1759
|
+
width: `${this.leftWidth}px`,
|
|
1760
|
+
} }, h("slot", { name: "left" })), h("button", { onMouseDown: e => this.handleMouseDown(e), onTouchStart: e => this.handleMouseDown(e), onKeyDown: e => this.handleKeyDown(e), ref: el => this.splitter = el, style: {
|
|
1761
|
+
minWidth: `${this.splitterWidth.toString()}px`,
|
|
1762
|
+
left: `${this.leftWidth - 2}px`,
|
|
1763
|
+
} }, h("slot", null)), h("div", { class: "right pane", style: {
|
|
1764
|
+
width: `${this.rightWidth}px`,
|
|
1765
|
+
} }, h("slot", { name: "right" }))));
|
|
1766
|
+
}
|
|
1767
|
+
get element() { return getElement(this); }
|
|
1768
|
+
};
|
|
1769
|
+
DnnVerticalSplitview.style = dnnVerticalSplitviewCss;
|
|
1770
|
+
|
|
1771
|
+
export { DnnButton as dnn_button, DnnCheckbox as dnn_checkbox, DnnChevron as dnn_chevron, DnnCollapsible as dnn_collapsible, DnnColorPicker as dnn_color_picker, DnnDropzone as dnn_dropzone, DnnImageCropper as dnn_image_cropper, DnnModal as dnn_modal, DnnSearchbox as dnn_searchbox, DnnSortIcon as dnn_sort_icon, DnnTab as dnn_tab, DnnTabs as dnn_tabs, DnnToggle as dnn_toggle, DnnTreeviewItem as dnn_treeview_item, DnnVerticalOverflowMenu as dnn_vertical_overflow_menu, DnnVerticalSplitview as dnn_vertical_splitview };
|
|
1562
1772
|
|
|
1563
|
-
//# sourceMappingURL=dnn-
|
|
1773
|
+
//# sourceMappingURL=dnn-button_16.entry.js.map
|