@sankhyalabs/ezui 3.0.3 → 3.1.0
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/dist/cjs/{ApplicationUtils-350ac2ff.js → ApplicationUtils-1eef635f.js} +8 -4
- package/dist/cjs/constants-5a75e2f3.js +5 -0
- package/dist/cjs/ez-actions-button.cjs.entry.js +2 -2
- package/dist/cjs/ez-alert.cjs.entry.js +1 -1
- package/dist/cjs/ez-application.cjs.entry.js +1 -1
- package/dist/cjs/ez-breadcrumb.cjs.entry.js +263 -9
- package/dist/cjs/ez-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
- package/dist/cjs/ez-card-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-check.cjs.entry.js +1 -1
- package/dist/cjs/ez-chip.cjs.entry.js +1 -1
- package/dist/cjs/ez-collapsible-box.cjs.entry.js +2 -2
- package/dist/cjs/ez-combo-box.cjs.entry.js +95 -11
- package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
- package/dist/cjs/ez-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-filter-input_4.cjs.entry.js +1 -1
- package/dist/cjs/ez-form-view.cjs.entry.js +3 -2
- package/dist/cjs/ez-form.cjs.entry.js +2 -2
- package/dist/cjs/ez-grid.cjs.entry.js +1 -1
- package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
- package/dist/cjs/ez-icon.cjs.entry.js +1 -1
- package/dist/cjs/ez-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
- package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
- package/dist/cjs/ez-modal.cjs.entry.js +1 -1
- package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-popover.cjs.entry.js +1 -1
- package/dist/cjs/ez-popup.cjs.entry.js +1 -1
- package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-search.cjs.entry.js +1 -1
- package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
- package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
- package/dist/cjs/ez-text-edit.cjs.entry.js +2 -2
- package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-toast.cjs.entry.js +11 -3
- package/dist/cjs/ez-upload.cjs.entry.js +2 -2
- package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
- package/dist/cjs/ezui.cjs.js +2 -2
- package/dist/cjs/{index-892780f1.js → index-b54f47a1.js} +5 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/components/ez-breadcrumb/ez-breadcrumb.css +10 -1
- package/dist/collection/components/ez-breadcrumb/ez-breadcrumb.js +291 -9
- package/dist/collection/components/ez-breadcrumb/subcomponents/breadcrumb-item.js +31 -0
- package/dist/collection/components/ez-combo-box/ez-combo-box.js +93 -9
- package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +2 -1
- package/dist/collection/components/ez-toast/ez-toast.css +1 -1
- package/dist/collection/components/ez-toast/ez-toast.js +9 -1
- package/dist/collection/utils/ApplicationUtils.js +8 -4
- package/dist/collection/utils/constants.js +1 -0
- package/dist/custom-elements/index.js +377 -26
- package/dist/esm/{ApplicationUtils-9fda4796.js → ApplicationUtils-79bf1d95.js} +8 -4
- package/dist/esm/constants-ca136201.js +3 -0
- package/dist/esm/ez-actions-button.entry.js +2 -2
- package/dist/esm/ez-alert.entry.js +1 -1
- package/dist/esm/ez-application.entry.js +1 -1
- package/dist/esm/ez-breadcrumb.entry.js +264 -10
- package/dist/esm/ez-button.entry.js +1 -1
- package/dist/esm/ez-calendar.entry.js +1 -1
- package/dist/esm/ez-card-item.entry.js +1 -1
- package/dist/esm/ez-check.entry.js +1 -1
- package/dist/esm/ez-chip.entry.js +1 -1
- package/dist/esm/ez-collapsible-box.entry.js +2 -2
- package/dist/esm/ez-combo-box.entry.js +95 -11
- package/dist/esm/ez-date-input.entry.js +1 -1
- package/dist/esm/ez-date-time-input.entry.js +1 -1
- package/dist/esm/ez-dialog.entry.js +1 -1
- package/dist/esm/ez-dropdown.entry.js +1 -1
- package/dist/esm/ez-file-item.entry.js +1 -1
- package/dist/esm/ez-filter-input_4.entry.js +1 -1
- package/dist/esm/ez-form-view.entry.js +3 -2
- package/dist/esm/ez-form.entry.js +2 -2
- package/dist/esm/ez-grid.entry.js +1 -1
- package/dist/esm/ez-guide-navigator.entry.js +1 -1
- package/dist/esm/ez-icon.entry.js +1 -1
- package/dist/esm/ez-list.entry.js +1 -1
- package/dist/esm/ez-loading-bar.entry.js +1 -1
- package/dist/esm/ez-modal-container.entry.js +1 -1
- package/dist/esm/ez-modal.entry.js +1 -1
- package/dist/esm/ez-number-input.entry.js +1 -1
- package/dist/esm/ez-popover.entry.js +1 -1
- package/dist/esm/ez-popup.entry.js +1 -1
- package/dist/esm/ez-radio-button.entry.js +1 -1
- package/dist/esm/ez-search.entry.js +1 -1
- package/dist/esm/ez-tabselector.entry.js +1 -1
- package/dist/esm/ez-text-area.entry.js +1 -1
- package/dist/esm/ez-text-edit.entry.js +2 -2
- package/dist/esm/ez-text-input.entry.js +1 -1
- package/dist/esm/ez-time-input.entry.js +1 -1
- package/dist/esm/ez-toast.entry.js +11 -3
- package/dist/esm/ez-upload.entry.js +2 -2
- package/dist/esm/ez-view-stack.entry.js +1 -1
- package/dist/esm/ezui.js +3 -3
- package/dist/esm/{index-de655f48.js → index-c27164d3.js} +5 -0
- package/dist/esm/loader.js +3 -3
- package/dist/ezui/ezui.esm.js +1 -1
- package/dist/ezui/{p-7ffd12e7.js → p-00ea9b50.js} +2 -2
- package/dist/ezui/{p-0c7e81fe.entry.js → p-044a3427.entry.js} +1 -1
- package/dist/ezui/{p-6818dd0a.entry.js → p-064e558f.entry.js} +1 -1
- package/dist/ezui/{p-c98e571a.entry.js → p-0f76448d.entry.js} +1 -1
- package/dist/ezui/{p-36f7ec68.entry.js → p-124859c3.entry.js} +1 -1
- package/dist/ezui/{p-9613fae6.entry.js → p-149442dd.entry.js} +1 -1
- package/dist/ezui/{p-493e2af4.entry.js → p-1806b3c6.entry.js} +1 -1
- package/dist/ezui/{p-37b4bf04.entry.js → p-1a1c2eda.entry.js} +1 -1
- package/dist/ezui/{p-eceb9382.entry.js → p-1cfae451.entry.js} +1 -1
- package/dist/ezui/{p-07b99b94.entry.js → p-216e1153.entry.js} +1 -1
- package/dist/ezui/{p-1b95836f.entry.js → p-2c5f1107.entry.js} +1 -1
- package/dist/ezui/{p-fcf6cf57.entry.js → p-2d16e8c2.entry.js} +1 -1
- package/dist/ezui/p-30afcb93.entry.js +1 -0
- package/dist/ezui/{p-a323b415.entry.js → p-330aef41.entry.js} +1 -1
- package/dist/ezui/p-3f4ae3a3.js +1 -0
- package/dist/ezui/p-51ecf138.entry.js +1 -0
- package/dist/ezui/{p-f670bd32.entry.js → p-52e5cc09.entry.js} +1 -1
- package/dist/ezui/{p-c0184982.entry.js → p-66dba09c.entry.js} +1 -1
- package/dist/ezui/p-68acdc61.entry.js +1 -0
- package/dist/ezui/{p-4bfed869.entry.js → p-74379544.entry.js} +1 -1
- package/dist/ezui/{p-b1e4ccf4.entry.js → p-74b3615b.entry.js} +1 -1
- package/dist/ezui/{p-db131605.entry.js → p-77d70bae.entry.js} +1 -1
- package/dist/ezui/{p-600f1732.entry.js → p-78b28632.entry.js} +1 -1
- package/dist/ezui/{p-a4b281ca.entry.js → p-7ff5d0cc.entry.js} +1 -1
- package/dist/ezui/{p-cc5cfcb7.entry.js → p-80f79b1c.entry.js} +1 -1
- package/dist/ezui/{p-06b3e801.entry.js → p-85c1e00f.entry.js} +1 -1
- package/dist/ezui/{p-c1300e84.entry.js → p-8f1a5e21.entry.js} +1 -1
- package/dist/ezui/p-90c3d4fd.entry.js +1 -0
- package/dist/ezui/{p-b941aeee.entry.js → p-936ae3ac.entry.js} +1 -1
- package/dist/ezui/{p-b3c7b243.entry.js → p-93c8bdc6.entry.js} +1 -1
- package/dist/ezui/p-a0e47238.entry.js +1 -0
- package/dist/ezui/{p-86d29565.entry.js → p-aaba630e.entry.js} +1 -1
- package/dist/ezui/{p-62481744.entry.js → p-bb011a51.entry.js} +1 -1
- package/dist/ezui/{p-fd87638e.entry.js → p-bb0607a6.entry.js} +1 -1
- package/dist/ezui/{p-b405d9b6.entry.js → p-bf442859.entry.js} +1 -1
- package/dist/ezui/{p-8ca4750d.entry.js → p-bfca509e.entry.js} +1 -1
- package/dist/ezui/{p-82db6de7.entry.js → p-cd1e0679.entry.js} +1 -1
- package/dist/ezui/{p-cc40fcb3.entry.js → p-ce1408dd.entry.js} +1 -1
- package/dist/ezui/{p-1581fece.entry.js → p-dd13d0e6.entry.js} +1 -1
- package/dist/ezui/{p-a67e056f.entry.js → p-e6cf82e8.entry.js} +1 -1
- package/dist/ezui/{p-695facd0.entry.js → p-e8271a0e.entry.js} +1 -1
- package/dist/ezui/p-efb43dd8.js +1 -0
- package/dist/types/components/ez-breadcrumb/ez-breadcrumb.d.ts +52 -2
- package/dist/types/components/ez-breadcrumb/subcomponents/breadcrumb-item.d.ts +13 -0
- package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +10 -0
- package/dist/types/components/ez-toast/ez-toast.d.ts +1 -0
- package/dist/types/components.d.ts +25 -1
- package/dist/types/utils/ApplicationUtils.d.ts +4 -4
- package/dist/types/utils/constants.d.ts +1 -0
- package/package.json +1 -1
- package/dist/ezui/p-69a913b8.js +0 -1
- package/dist/ezui/p-a8c7355e.entry.js +0 -1
- package/dist/ezui/p-ada6e6b0.entry.js +0 -1
- package/dist/ezui/p-d6dd32b2.entry.js +0 -1
- package/dist/ezui/p-e0d756d9.entry.js +0 -1
- package/dist/ezui/p-f18d39e6.entry.js +0 -1
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
6
|
-
const ApplicationUtils = require('./ApplicationUtils-
|
|
5
|
+
const index = require('./index-b54f47a1.js');
|
|
6
|
+
const ApplicationUtils = require('./ApplicationUtils-1eef635f.js');
|
|
7
7
|
const core = require('@sankhyalabs/core');
|
|
8
8
|
require('./DialogType-2114c337.js');
|
|
9
9
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-b54f47a1.js');
|
|
6
6
|
const core = require('@sankhyalabs/core');
|
|
7
7
|
|
|
8
8
|
const ezViewStackCss = ":host{width:100%;height:100%}.ez-view-stack__container{width:100%;height:100%}";
|
package/dist/cjs/ezui.cjs.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-b54f47a1.js');
|
|
6
6
|
|
|
7
7
|
/*
|
|
8
8
|
Stencil Client Patch Browser v2.22.3 | MIT Licensed | https://stenciljs.com
|
|
@@ -17,7 +17,7 @@ const patchBrowser = () => {
|
|
|
17
17
|
};
|
|
18
18
|
|
|
19
19
|
patchBrowser().then(options => {
|
|
20
|
-
return index.bootstrapLazy([["ez-
|
|
20
|
+
return index.bootstrapLazy([["ez-actions-button.cjs",[[1,"ez-actions-button",{"enabled":[516],"actions":[1040],"size":[513],"showLabel":[516,"show-label"],"displayIcon":[513,"display-icon"],"checkOption":[516,"check-option"],"value":[513],"isTransparent":[516,"is-transparent"],"arrowActive":[516,"arrow-active"],"_selectedAction":[32],"hideActions":[64],"isOpened":[64]}]]],["ez-breadcrumb.cjs",[[1,"ez-breadcrumb",{"items":[1040],"fillMode":[1025,"fill-mode"],"maxItems":[1026,"max-items"],"positionEllipsis":[1026,"position-ellipsis"],"visibleItems":[32],"hiddenItems":[32],"showDropdown":[32],"collapseConfigPosition":[32]}]]],["ez-dialog.cjs",[[1,"ez-dialog",{"confirm":[1028],"dialogType":[1025,"dialog-type"],"message":[1025],"opened":[1540],"personalizedIconPath":[1025,"personalized-icon-path"],"ezTitle":[1025,"ez-title"],"show":[64]}]]],["ez-grid.cjs",[[6,"ez-grid",{"multipleSelection":[4,"multiple-selection"],"config":[1040],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"_paginationInfo":[32],"_paginationChangedByKeyboard":[32],"setColumnsDef":[64],"addColumnMenuItem":[64],"setColumnsState":[64],"setData":[64],"getSelection":[64],"getColumnsState":[64],"getColumns":[64],"quickFilter":[64]},[[0,"ezSelectionChange","onSelectionChange"]]]]],["ez-modal-container.cjs",[[6,"ez-modal-container",{"modalTitle":[1,"modal-title"],"modalSubTitle":[1,"modal-sub-title"],"showTitleBar":[4,"show-title-bar"],"cancelButtonLabel":[1,"cancel-button-label"],"okButtonLabel":[1,"ok-button-label"],"cancelButtonStatus":[1,"cancel-button-status"],"okButtonStatus":[1,"ok-button-status"]}]]],["ez-alert.cjs",[[1,"ez-alert",{"alertType":[513,"alert-type"]}]]],["ez-chip.cjs",[[1,"ez-chip",{"label":[513],"enabled":[516],"removePosition":[513,"remove-position"],"mode":[513],"value":[1540],"setFocus":[64],"setBlur":[64]}]]],["ez-file-item.cjs",[[1,"ez-file-item",{"canRemove":[4,"can-remove"],"fileName":[1,"file-name"],"iconName":[1,"icon-name"],"fileSize":[2,"file-size"],"progress":[2]}]]],["ez-application.cjs",[[0,"ez-application"]]],["ez-card-item.cjs",[[1,"ez-card-item",{"item":[16]}]]],["ez-list.cjs",[[1,"ez-list",{"dataSource":[1040],"useGroups":[1540,"use-groups"],"ezDraggable":[1028,"ez-draggable"],"ezSelectable":[1028,"ez-selectable"],"itemSlotBuilder":[1040],"_listItems":[32],"_listGroupItems":[32],"clearHistory":[64],"scrollToTop":[64],"setSelection":[64],"getSelection":[64],"getList":[64]}]]],["ez-loading-bar.cjs",[[1,"ez-loading-bar",{"_showLoading":[32],"hide":[64],"show":[64]}]]],["ez-modal.cjs",[[1,"ez-modal",{"modalSize":[1,"modal-size"],"align":[1],"opened":[1028],"closeEsc":[4,"close-esc"],"closeOutsideClick":[4,"close-outside-click"]}]]],["ez-popover.cjs",[[1,"ez-popover",{"autoClose":[516,"auto-close"],"top":[1537],"left":[1537],"bottom":[1537],"right":[1537],"boxWidth":[513,"box-width"],"opened":[1540],"innerElement":[1537,"inner-element"],"overlayType":[513,"overlay-type"],"updatePosition":[64],"show":[64],"hide":[64]}]]],["ez-popup.cjs",[[1,"ez-popup",{"size":[1],"opened":[1540],"useHeader":[516,"use-header"],"heightMode":[513,"height-mode"],"ezTitle":[1,"ez-title"]}]]],["ez-radio-button.cjs",[[1,"ez-radio-button",{"value":[1544],"options":[1040],"enabled":[516],"label":[513],"direction":[1537]}]]],["ez-toast.cjs",[[1,"ez-toast",{"message":[1025],"fadeTime":[1026,"fade-time"],"useIcon":[1028,"use-icon"],"canClose":[1028,"can-close"],"show":[64]}]]],["ez-view-stack.cjs",[[0,"ez-view-stack",{"show":[64],"getSelectedIndex":[64]}]]],["ez-form-view.cjs",[[2,"ez-form-view",{"fields":[16]}]]],["ez-tabselector.cjs",[[1,"ez-tabselector",{"selectedIndex":[1538,"selected-index"],"selectedTab":[1537,"selected-tab"],"tabs":[1],"_processedTabs":[32]}]]],["ez-text-input.cjs",[[1,"ez-text-input",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"mask":[1],"canShowError":[516,"can-show-error"],"restrict":[1],"mode":[513],"noBorder":[516,"no-border"],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-guide-navigator.cjs",[[1,"ez-guide-navigator",{"open":[1540],"items":[16],"tooltipResolver":[16],"filterText":[32],"disableItem":[64],"enableItem":[64]}]]],["ez-dropdown.cjs",[[1,"ez-dropdown",{"items":[1040],"value":[1040],"itemBuilder":[16]}]]],["ez-collapsible-box.cjs",[[1,"ez-collapsible-box",{"value":[1540],"label":[513],"headerSize":[513,"header-size"],"iconPlacement":[513,"icon-placement"],"headerAlign":[513,"header-align"],"removable":[516],"editable":[516],"conditionalSave":[16],"_activeEditText":[32],"showHide":[64],"applyFocusTextEdit":[64],"cancelEdition":[64]}]]],["ez-search.cjs",[[1,"ez-search",{"value":[1537],"label":[1537],"enabled":[1540],"errorMessage":[1537,"error-message"],"optionLoader":[16],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressEmptyOption":[4,"suppress-empty-option"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-input.cjs",[[1,"ez-date-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-time-input.cjs",[[1,"ez-date-time-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-time-input.cjs",[[1,"ez-time-input",{"label":[513],"value":[1026],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-number-input.cjs",[[1,"ez-number-input",{"label":[1],"value":[1538],"enabled":[4],"errorMessage":[1537,"error-message"],"precision":[2],"prettyPrecision":[2,"pretty-precision"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-check.cjs",[[1,"ez-check",{"label":[513],"value":[1540],"enabled":[1540],"indeterminate":[516],"mode":[513],"getMode":[64],"setFocus":[64]}]]],["ez-text-area.cjs",[[1,"ez-text-area",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"rows":[1538],"canShowError":[516,"can-show-error"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-upload.cjs",[[1,"ez-upload",{"label":[1],"enabled":[4],"maxFileSize":[2,"max-file-size"],"maxFiles":[2,"max-files"],"requestHeaders":[8,"request-headers"],"urlUpload":[1,"url-upload"],"urlDelete":[1,"url-delete"],"value":[1040],"addFiles":[64],"setFocus":[64],"setBlur":[64]}]]],["ez-combo-box.cjs",[[1,"ez-combo-box",{"value":[1537],"label":[513],"enabled":[516],"options":[1040],"errorMessage":[1537,"error-message"],"searchMode":[4,"search-mode"],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressSearch":[4,"suppress-search"],"optionLoader":[16],"suppressEmptyOption":[4,"suppress-empty-option"],"canShowError":[516,"can-show-error"],"mode":[513],"_preSelection":[32],"_visibleOptions":[32],"_startLoading":[32],"_showLoading":[32],"_criteria":[32],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-calendar.cjs",[[1,"ez-calendar",{"value":[1040],"floating":[516],"time":[516],"showSeconds":[516,"show-seconds"],"show":[64],"fitVertical":[64],"hide":[64]}]]],["ez-icon.cjs",[[1,"ez-icon",{"size":[513],"href":[513],"iconName":[513,"icon-name"]}]]],["ez-filter-input_4.cjs",[[1,"ez-filter-input",{"label":[1],"value":[1537],"enabled":[4],"errorMessage":[1537,"error-message"],"restrict":[1],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}],[1,"ez-scroller",{"direction":[1],"locked":[4],"activeShadow":[4,"active-shadow"],"isActive":[32]},[[2,"click","clickListener"],[1,"mousedown","mouseDownHandler"],[1,"mouseup","mouseUpHandler"],[1,"mousemove","mouseMoveHandler"]]],[1,"ez-sidebar-button"],[1,"ez-tree",{"items":[1040],"value":[1040],"selectedId":[1537,"selected-id"],"iconResolver":[16],"tooltipResolver":[16],"_tree":[32],"_waintingForLoad":[32],"selectItem":[64],"openItem":[64],"disableItem":[64],"enableItem":[64],"addChild":[64],"applyFilter":[64]},[[2,"keydown","onKeyDownListener"]]]]],["ez-button.cjs",[[1,"ez-button",{"label":[513],"enabled":[516],"mode":[513],"image":[513],"iconName":[513,"icon-name"],"size":[513],"setFocus":[64],"setBlur":[64]}]]],["ez-text-edit.cjs",[[1,"ez-text-edit",{"value":[1],"styled":[16],"_newValue":[32],"applyFocusSelect":[64]}]]],["ez-form.cjs",[[2,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16],"multiLevel":[4,"multi-level"],"levelResolver":[16],"contentBuilder":[16],"validate":[64]}]]]], options);
|
|
21
21
|
});
|
|
22
22
|
|
|
23
23
|
exports.setNonce = index.setNonce;
|
|
@@ -1590,6 +1590,11 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
|
|
|
1590
1590
|
}
|
|
1591
1591
|
}
|
|
1592
1592
|
if ((flags & (2 /* HOST_FLAGS.hasRendered */ | 16 /* HOST_FLAGS.isQueuedForUpdate */)) === 2 /* HOST_FLAGS.hasRendered */) {
|
|
1593
|
+
if (instance.componentShouldUpdate) {
|
|
1594
|
+
if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) {
|
|
1595
|
+
return;
|
|
1596
|
+
}
|
|
1597
|
+
}
|
|
1593
1598
|
// looks like this value actually changed, so we've got work to do!
|
|
1594
1599
|
// but only if we've already rendered, otherwise just chill out
|
|
1595
1600
|
// queue that we need to do an update, but don't worry about queuing
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-b54f47a1.js');
|
|
6
6
|
|
|
7
7
|
/*
|
|
8
8
|
Stencil Client Patch Esm v2.22.3 | MIT Licensed | https://stenciljs.com
|
|
@@ -14,7 +14,7 @@ const patchEsm = () => {
|
|
|
14
14
|
const defineCustomElements = (win, options) => {
|
|
15
15
|
if (typeof window === 'undefined') return Promise.resolve();
|
|
16
16
|
return patchEsm().then(() => {
|
|
17
|
-
return index.bootstrapLazy([["ez-
|
|
17
|
+
return index.bootstrapLazy([["ez-actions-button.cjs",[[1,"ez-actions-button",{"enabled":[516],"actions":[1040],"size":[513],"showLabel":[516,"show-label"],"displayIcon":[513,"display-icon"],"checkOption":[516,"check-option"],"value":[513],"isTransparent":[516,"is-transparent"],"arrowActive":[516,"arrow-active"],"_selectedAction":[32],"hideActions":[64],"isOpened":[64]}]]],["ez-breadcrumb.cjs",[[1,"ez-breadcrumb",{"items":[1040],"fillMode":[1025,"fill-mode"],"maxItems":[1026,"max-items"],"positionEllipsis":[1026,"position-ellipsis"],"visibleItems":[32],"hiddenItems":[32],"showDropdown":[32],"collapseConfigPosition":[32]}]]],["ez-dialog.cjs",[[1,"ez-dialog",{"confirm":[1028],"dialogType":[1025,"dialog-type"],"message":[1025],"opened":[1540],"personalizedIconPath":[1025,"personalized-icon-path"],"ezTitle":[1025,"ez-title"],"show":[64]}]]],["ez-grid.cjs",[[6,"ez-grid",{"multipleSelection":[4,"multiple-selection"],"config":[1040],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"_paginationInfo":[32],"_paginationChangedByKeyboard":[32],"setColumnsDef":[64],"addColumnMenuItem":[64],"setColumnsState":[64],"setData":[64],"getSelection":[64],"getColumnsState":[64],"getColumns":[64],"quickFilter":[64]},[[0,"ezSelectionChange","onSelectionChange"]]]]],["ez-modal-container.cjs",[[6,"ez-modal-container",{"modalTitle":[1,"modal-title"],"modalSubTitle":[1,"modal-sub-title"],"showTitleBar":[4,"show-title-bar"],"cancelButtonLabel":[1,"cancel-button-label"],"okButtonLabel":[1,"ok-button-label"],"cancelButtonStatus":[1,"cancel-button-status"],"okButtonStatus":[1,"ok-button-status"]}]]],["ez-alert.cjs",[[1,"ez-alert",{"alertType":[513,"alert-type"]}]]],["ez-chip.cjs",[[1,"ez-chip",{"label":[513],"enabled":[516],"removePosition":[513,"remove-position"],"mode":[513],"value":[1540],"setFocus":[64],"setBlur":[64]}]]],["ez-file-item.cjs",[[1,"ez-file-item",{"canRemove":[4,"can-remove"],"fileName":[1,"file-name"],"iconName":[1,"icon-name"],"fileSize":[2,"file-size"],"progress":[2]}]]],["ez-application.cjs",[[0,"ez-application"]]],["ez-card-item.cjs",[[1,"ez-card-item",{"item":[16]}]]],["ez-list.cjs",[[1,"ez-list",{"dataSource":[1040],"useGroups":[1540,"use-groups"],"ezDraggable":[1028,"ez-draggable"],"ezSelectable":[1028,"ez-selectable"],"itemSlotBuilder":[1040],"_listItems":[32],"_listGroupItems":[32],"clearHistory":[64],"scrollToTop":[64],"setSelection":[64],"getSelection":[64],"getList":[64]}]]],["ez-loading-bar.cjs",[[1,"ez-loading-bar",{"_showLoading":[32],"hide":[64],"show":[64]}]]],["ez-modal.cjs",[[1,"ez-modal",{"modalSize":[1,"modal-size"],"align":[1],"opened":[1028],"closeEsc":[4,"close-esc"],"closeOutsideClick":[4,"close-outside-click"]}]]],["ez-popover.cjs",[[1,"ez-popover",{"autoClose":[516,"auto-close"],"top":[1537],"left":[1537],"bottom":[1537],"right":[1537],"boxWidth":[513,"box-width"],"opened":[1540],"innerElement":[1537,"inner-element"],"overlayType":[513,"overlay-type"],"updatePosition":[64],"show":[64],"hide":[64]}]]],["ez-popup.cjs",[[1,"ez-popup",{"size":[1],"opened":[1540],"useHeader":[516,"use-header"],"heightMode":[513,"height-mode"],"ezTitle":[1,"ez-title"]}]]],["ez-radio-button.cjs",[[1,"ez-radio-button",{"value":[1544],"options":[1040],"enabled":[516],"label":[513],"direction":[1537]}]]],["ez-toast.cjs",[[1,"ez-toast",{"message":[1025],"fadeTime":[1026,"fade-time"],"useIcon":[1028,"use-icon"],"canClose":[1028,"can-close"],"show":[64]}]]],["ez-view-stack.cjs",[[0,"ez-view-stack",{"show":[64],"getSelectedIndex":[64]}]]],["ez-form-view.cjs",[[2,"ez-form-view",{"fields":[16]}]]],["ez-tabselector.cjs",[[1,"ez-tabselector",{"selectedIndex":[1538,"selected-index"],"selectedTab":[1537,"selected-tab"],"tabs":[1],"_processedTabs":[32]}]]],["ez-text-input.cjs",[[1,"ez-text-input",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"mask":[1],"canShowError":[516,"can-show-error"],"restrict":[1],"mode":[513],"noBorder":[516,"no-border"],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-guide-navigator.cjs",[[1,"ez-guide-navigator",{"open":[1540],"items":[16],"tooltipResolver":[16],"filterText":[32],"disableItem":[64],"enableItem":[64]}]]],["ez-dropdown.cjs",[[1,"ez-dropdown",{"items":[1040],"value":[1040],"itemBuilder":[16]}]]],["ez-collapsible-box.cjs",[[1,"ez-collapsible-box",{"value":[1540],"label":[513],"headerSize":[513,"header-size"],"iconPlacement":[513,"icon-placement"],"headerAlign":[513,"header-align"],"removable":[516],"editable":[516],"conditionalSave":[16],"_activeEditText":[32],"showHide":[64],"applyFocusTextEdit":[64],"cancelEdition":[64]}]]],["ez-search.cjs",[[1,"ez-search",{"value":[1537],"label":[1537],"enabled":[1540],"errorMessage":[1537,"error-message"],"optionLoader":[16],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressEmptyOption":[4,"suppress-empty-option"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-input.cjs",[[1,"ez-date-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-time-input.cjs",[[1,"ez-date-time-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-time-input.cjs",[[1,"ez-time-input",{"label":[513],"value":[1026],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-number-input.cjs",[[1,"ez-number-input",{"label":[1],"value":[1538],"enabled":[4],"errorMessage":[1537,"error-message"],"precision":[2],"prettyPrecision":[2,"pretty-precision"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-check.cjs",[[1,"ez-check",{"label":[513],"value":[1540],"enabled":[1540],"indeterminate":[516],"mode":[513],"getMode":[64],"setFocus":[64]}]]],["ez-text-area.cjs",[[1,"ez-text-area",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"rows":[1538],"canShowError":[516,"can-show-error"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-upload.cjs",[[1,"ez-upload",{"label":[1],"enabled":[4],"maxFileSize":[2,"max-file-size"],"maxFiles":[2,"max-files"],"requestHeaders":[8,"request-headers"],"urlUpload":[1,"url-upload"],"urlDelete":[1,"url-delete"],"value":[1040],"addFiles":[64],"setFocus":[64],"setBlur":[64]}]]],["ez-combo-box.cjs",[[1,"ez-combo-box",{"value":[1537],"label":[513],"enabled":[516],"options":[1040],"errorMessage":[1537,"error-message"],"searchMode":[4,"search-mode"],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressSearch":[4,"suppress-search"],"optionLoader":[16],"suppressEmptyOption":[4,"suppress-empty-option"],"canShowError":[516,"can-show-error"],"mode":[513],"_preSelection":[32],"_visibleOptions":[32],"_startLoading":[32],"_showLoading":[32],"_criteria":[32],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-calendar.cjs",[[1,"ez-calendar",{"value":[1040],"floating":[516],"time":[516],"showSeconds":[516,"show-seconds"],"show":[64],"fitVertical":[64],"hide":[64]}]]],["ez-icon.cjs",[[1,"ez-icon",{"size":[513],"href":[513],"iconName":[513,"icon-name"]}]]],["ez-filter-input_4.cjs",[[1,"ez-filter-input",{"label":[1],"value":[1537],"enabled":[4],"errorMessage":[1537,"error-message"],"restrict":[1],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}],[1,"ez-scroller",{"direction":[1],"locked":[4],"activeShadow":[4,"active-shadow"],"isActive":[32]},[[2,"click","clickListener"],[1,"mousedown","mouseDownHandler"],[1,"mouseup","mouseUpHandler"],[1,"mousemove","mouseMoveHandler"]]],[1,"ez-sidebar-button"],[1,"ez-tree",{"items":[1040],"value":[1040],"selectedId":[1537,"selected-id"],"iconResolver":[16],"tooltipResolver":[16],"_tree":[32],"_waintingForLoad":[32],"selectItem":[64],"openItem":[64],"disableItem":[64],"enableItem":[64],"addChild":[64],"applyFilter":[64]},[[2,"keydown","onKeyDownListener"]]]]],["ez-button.cjs",[[1,"ez-button",{"label":[513],"enabled":[516],"mode":[513],"image":[513],"iconName":[513,"icon-name"],"size":[513],"setFocus":[64],"setBlur":[64]}]]],["ez-text-edit.cjs",[[1,"ez-text-edit",{"value":[1],"styled":[16],"_newValue":[32],"applyFocusSelect":[64]}]]],["ez-form.cjs",[[2,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16],"multiLevel":[4,"multi-level"],"levelResolver":[16],"contentBuilder":[16],"validate":[64]}]]]], options);
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
20
|
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
:host {
|
|
2
|
-
|
|
3
2
|
/*@doc Define a cor da fonte do link, com exceção do último.*/
|
|
4
3
|
--breadcrumb__item--label--color--title-primary: var(--color--title-primary, #2B3A54);
|
|
5
4
|
/*@doc Define a cor da fonte do último link*/
|
|
@@ -13,11 +12,17 @@
|
|
|
13
12
|
font-weight: var(--text-weight--medium, 400);
|
|
14
13
|
}
|
|
15
14
|
|
|
15
|
+
.breadcrumb__group{
|
|
16
|
+
display: flex;
|
|
17
|
+
}
|
|
18
|
+
|
|
16
19
|
.breadcrumb__list {
|
|
17
20
|
list-style-type: none;
|
|
18
21
|
display: inline-block;
|
|
19
22
|
margin: 0;
|
|
20
23
|
padding: 0;
|
|
24
|
+
overflow: hidden;
|
|
25
|
+
white-space: nowrap;
|
|
21
26
|
}
|
|
22
27
|
|
|
23
28
|
.breadcrumb__item {
|
|
@@ -51,3 +56,7 @@
|
|
|
51
56
|
--icon--color: var(--breadcrumb__item--label--color--active);
|
|
52
57
|
cursor: default;
|
|
53
58
|
}
|
|
59
|
+
|
|
60
|
+
.breadcrumb__items{
|
|
61
|
+
display: flex;
|
|
62
|
+
}
|
|
@@ -1,20 +1,231 @@
|
|
|
1
1
|
import { h } from '@stencil/core';
|
|
2
|
-
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
2
|
+
import { ElementIDUtils, JSUtils } from '@sankhyalabs/core';
|
|
3
|
+
import { BreadcrumbItem } from './subcomponents/breadcrumb-item';
|
|
3
4
|
export class EzBreadcrumb {
|
|
4
5
|
constructor() {
|
|
6
|
+
this._ellipsesPositionedEnd = false;
|
|
7
|
+
this._renderSecond = false;
|
|
8
|
+
this.INDEX_ITEM_TO_REMOVE = 1; // sempre removemos o segundo item.
|
|
9
|
+
this.CHEVRON_SIZE = 28;
|
|
10
|
+
this.handleShowDropdown = (newState) => {
|
|
11
|
+
this.showDropdown = newState;
|
|
12
|
+
};
|
|
5
13
|
this.items = [];
|
|
14
|
+
this.fillMode = "auto";
|
|
15
|
+
this.maxItems = 4;
|
|
16
|
+
this.positionEllipsis = 1;
|
|
17
|
+
this.visibleItems = undefined;
|
|
18
|
+
this.hiddenItems = [];
|
|
19
|
+
this.showDropdown = false;
|
|
20
|
+
this.collapseConfigPosition = -1;
|
|
21
|
+
}
|
|
22
|
+
watchPropHandler() {
|
|
23
|
+
this.fillMode === "auto" && this.handleResize();
|
|
24
|
+
}
|
|
25
|
+
watchPropHiddenItems() {
|
|
26
|
+
if (this.fillMode === 'auto') {
|
|
27
|
+
this.collapseConfigPosition = this.hiddenItems.length > 0 ? 1 : -1;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
componentDidUpdate() {
|
|
31
|
+
this.positionDropdown();
|
|
32
|
+
this.setEvents();
|
|
33
|
+
}
|
|
34
|
+
componentWillLoad() {
|
|
35
|
+
this.visibleItems = [...this.items];
|
|
36
|
+
if (this.fillMode === 'regular') {
|
|
37
|
+
this.configModeRegular();
|
|
38
|
+
}
|
|
39
|
+
else if (this.fillMode === 'auto') {
|
|
40
|
+
this.startResize();
|
|
41
|
+
}
|
|
42
|
+
this.setEvents();
|
|
43
|
+
}
|
|
44
|
+
closeDropdown(evt) {
|
|
45
|
+
const target = evt === null || evt === void 0 ? void 0 : evt.target;
|
|
46
|
+
if (target == undefined) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (target !== this._element.shadowRoot.querySelector(".ellipses__item")) {
|
|
50
|
+
this.showDropdown = false;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
setEvents() {
|
|
54
|
+
document.removeEventListener("click", this.closeDropdown.bind(this));
|
|
55
|
+
document.addEventListener("click", this.closeDropdown.bind(this));
|
|
56
|
+
document.removeEventListener("scroll", this.positionDropdown.bind(this));
|
|
57
|
+
document.addEventListener("scroll", this.positionDropdown.bind(this));
|
|
6
58
|
}
|
|
7
59
|
componentDidLoad() {
|
|
8
60
|
ElementIDUtils.addIDInfo(this._element);
|
|
9
61
|
}
|
|
10
|
-
|
|
11
|
-
this.
|
|
62
|
+
componentDidRender() {
|
|
63
|
+
if (this.fillMode === 'auto') {
|
|
64
|
+
this.configResize();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
configResize() {
|
|
68
|
+
if (this._resizeObserver != undefined) {
|
|
69
|
+
this._resizeObserver.unobserve(this._element.parentElement);
|
|
70
|
+
}
|
|
71
|
+
this._resizeObserver = new ResizeObserver(JSUtils.debounce(this.handleResize.bind(this), 200));
|
|
72
|
+
this._resizeObserver.observe(this._element.parentElement);
|
|
73
|
+
}
|
|
74
|
+
handleResize() {
|
|
75
|
+
const ELLIPSIS_SIZE = 39;
|
|
76
|
+
if (!this._renderSecond) {
|
|
77
|
+
this._renderSecond = true;
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
let { offsetWidth } = this._element.parentElement;
|
|
81
|
+
let sumVisibleItems = 0;
|
|
82
|
+
this.visibleItems.forEach(item => sumVisibleItems += item.width);
|
|
83
|
+
//Se existe o ellipsis, devemos cconsidera-lo no calculo
|
|
84
|
+
const offset = this.collapseConfigPosition > -1 ? ELLIPSIS_SIZE : 0;
|
|
85
|
+
if (offsetWidth < sumVisibleItems + offset) {
|
|
86
|
+
this.handleCollapse(offsetWidth, sumVisibleItems);
|
|
87
|
+
}
|
|
88
|
+
else if (offsetWidth >= sumVisibleItems + offset) {
|
|
89
|
+
this.handleExpand(offsetWidth);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
handleCollapse(containerWidth, itemsWidth) {
|
|
93
|
+
const MIN_VISIBLE_ITEMS = 2;
|
|
94
|
+
if (this.visibleItems.length <= MIN_VISIBLE_ITEMS) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
let tmpVisibleItems = [...this.visibleItems];
|
|
98
|
+
let tmpHiddenItems = [...this.hiddenItems];
|
|
99
|
+
let secondItem = tmpVisibleItems[this.INDEX_ITEM_TO_REMOVE];
|
|
100
|
+
let hasChange = false;
|
|
101
|
+
while (tmpVisibleItems.length > MIN_VISIBLE_ITEMS &&
|
|
102
|
+
secondItem != undefined &&
|
|
103
|
+
itemsWidth > containerWidth) {
|
|
104
|
+
hasChange = true;
|
|
105
|
+
tmpVisibleItems = tmpVisibleItems.filter((_, index) => index !== this.INDEX_ITEM_TO_REMOVE);
|
|
106
|
+
tmpHiddenItems = [...tmpHiddenItems, secondItem];
|
|
107
|
+
itemsWidth -= secondItem.width;
|
|
108
|
+
secondItem = tmpVisibleItems[this.INDEX_ITEM_TO_REMOVE];
|
|
109
|
+
}
|
|
110
|
+
if (hasChange) {
|
|
111
|
+
this.visibleItems = tmpVisibleItems;
|
|
112
|
+
this.hiddenItems = tmpHiddenItems;
|
|
113
|
+
this.showDropdown = false;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
handleExpand(containerWidth) {
|
|
117
|
+
if (!this.hiddenItems.length) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
let widthFreeZone = Math.abs(this._elBreadcrumbList.offsetWidth - containerWidth);
|
|
121
|
+
let tmpVisibleItems = [...this.visibleItems];
|
|
122
|
+
let tmpHiddenItems = [...this.hiddenItems];
|
|
123
|
+
let lastHiddenElement = tmpHiddenItems[tmpHiddenItems.length - 1];
|
|
124
|
+
let hasChange = false;
|
|
125
|
+
while (lastHiddenElement && widthFreeZone >= lastHiddenElement.width) {
|
|
126
|
+
widthFreeZone -= lastHiddenElement.width;
|
|
127
|
+
tmpHiddenItems.pop();
|
|
128
|
+
tmpVisibleItems.splice(this.INDEX_ITEM_TO_REMOVE, 0, lastHiddenElement);
|
|
129
|
+
lastHiddenElement = tmpHiddenItems[tmpHiddenItems.length - 1];
|
|
130
|
+
hasChange = true;
|
|
131
|
+
}
|
|
132
|
+
if (hasChange) {
|
|
133
|
+
this.visibleItems = tmpVisibleItems;
|
|
134
|
+
this.hiddenItems = tmpHiddenItems;
|
|
135
|
+
this.showDropdown = false;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
configModeRegular() {
|
|
139
|
+
if (this.visibleItems.length > this.maxItems) {
|
|
140
|
+
const amountsItemsToHide = Math.abs(this.visibleItems.length - this.maxItems);
|
|
141
|
+
if (this.positionEllipsis === 0) {
|
|
142
|
+
const itemsToTransfer = this.visibleItems.slice(0, amountsItemsToHide);
|
|
143
|
+
this.hiddenItems.push(...itemsToTransfer);
|
|
144
|
+
this.visibleItems.splice(0, amountsItemsToHide);
|
|
145
|
+
}
|
|
146
|
+
else if (this.positionEllipsis >= this.maxItems) {
|
|
147
|
+
const itemsToTransfer = this.visibleItems.slice(this.maxItems);
|
|
148
|
+
this.hiddenItems.push(...itemsToTransfer);
|
|
149
|
+
this.visibleItems.splice(this.maxItems);
|
|
150
|
+
this._ellipsesPositionedEnd = true;
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
const removedItems = this.visibleItems.splice(this.positionEllipsis, amountsItemsToHide);
|
|
154
|
+
this.hiddenItems.push(...removedItems);
|
|
155
|
+
}
|
|
156
|
+
this.collapseConfigPosition = this.positionEllipsis;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
positionDropdown() {
|
|
160
|
+
var _a;
|
|
161
|
+
const bounding = (_a = this._element.shadowRoot.querySelector(".ellipses__item")) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
|
162
|
+
const elDropdown = this._element.shadowRoot.querySelector(".dropdown-ellipsis");
|
|
163
|
+
if (bounding == undefined || elDropdown == undefined) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
elDropdown.style.top = (bounding.y + bounding.height + 5) + "px";
|
|
167
|
+
elDropdown.style.left = bounding.x + "px";
|
|
168
|
+
}
|
|
169
|
+
;
|
|
170
|
+
async startResize() {
|
|
171
|
+
const areaAvailable = this._element.parentElement.offsetWidth;
|
|
172
|
+
const ELLIPSIS_SIZE = 10;
|
|
173
|
+
const measureItemSize = async (item, index) => {
|
|
174
|
+
item.width = await this.measureSizeHTMLElement(item);
|
|
175
|
+
/*
|
|
176
|
+
Se é o ultimo item, desconsideramos o icone CHEVRON
|
|
177
|
+
*/
|
|
178
|
+
if (index === this.visibleItems.length - 1) {
|
|
179
|
+
item.width -= this.CHEVRON_SIZE;
|
|
180
|
+
}
|
|
181
|
+
return item;
|
|
182
|
+
};
|
|
183
|
+
const measuredItems = await Promise.all(this.visibleItems.map(measureItemSize));
|
|
184
|
+
const sizeBreadcrumb = measuredItems.reduce((total, item) => total + item.width, 0);
|
|
185
|
+
if (sizeBreadcrumb > areaAvailable) {
|
|
186
|
+
const tempItemsVisible = [];
|
|
187
|
+
const tempItemsHidden = [...measuredItems];
|
|
188
|
+
const firstItem = tempItemsHidden.shift();
|
|
189
|
+
const lastItem = tempItemsHidden.pop();
|
|
190
|
+
lastItem.width += ELLIPSIS_SIZE;
|
|
191
|
+
tempItemsVisible.push(firstItem, lastItem);
|
|
192
|
+
let sizeTempItemsHiddenResult = tempItemsVisible.reduce((total, item) => total + item.width, 0);
|
|
193
|
+
let newAreaAvailable = Math.abs(sizeTempItemsHiddenResult - areaAvailable);
|
|
194
|
+
tempItemsHidden.reverse().forEach((item) => {
|
|
195
|
+
if (item.width < newAreaAvailable) {
|
|
196
|
+
const firstItemForListHidden = tempItemsHidden.shift();
|
|
197
|
+
tempItemsVisible.splice(1, 0, firstItemForListHidden);
|
|
198
|
+
sizeTempItemsHiddenResult = tempItemsVisible.reduce((total, item) => total + item.width, 0);
|
|
199
|
+
newAreaAvailable = Math.abs(sizeTempItemsHiddenResult - areaAvailable);
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
this.visibleItems = [...tempItemsVisible];
|
|
203
|
+
this.hiddenItems = [...tempItemsHidden.reverse()];
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
measureSizeHTMLElement(item) {
|
|
207
|
+
return new Promise((resolve) => {
|
|
208
|
+
const ICON_SIZE = 19;
|
|
209
|
+
this.waitFontLoad().then(() => {
|
|
210
|
+
if (this._textMesurement === undefined) {
|
|
211
|
+
this._textMesurement = this._element.shadowRoot.ownerDocument.createElement("canvas");
|
|
212
|
+
}
|
|
213
|
+
const context = this._textMesurement.getContext("2d");
|
|
214
|
+
context.font = "14px Roboto, Algerian";
|
|
215
|
+
resolve((item.iconName ? ICON_SIZE : 0) + this.CHEVRON_SIZE + context.measureText(item.label).width);
|
|
216
|
+
});
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
waitFontLoad() {
|
|
220
|
+
return new Promise((resolve) => {
|
|
221
|
+
document.fonts.load("14px Roboto").then(() => resolve(), resolve());
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
getItemContent() {
|
|
225
|
+
return (h("nav", { class: "breadcrumb" }, h("ol", { class: "breadcrumb__list", ref: elem => this._elBreadcrumbList = elem }, h(BreadcrumbItem, { items: this.visibleItems, selectedItem: this.selectedItem, itemsHidden: this.hiddenItems, showDropdown: this.showDropdown, handleShowDropdown: this.handleShowDropdown, collapseConfigPosition: this.collapseConfigPosition, ellipsesPositionedEnd: this._ellipsesPositionedEnd }))));
|
|
12
226
|
}
|
|
13
227
|
render() {
|
|
14
|
-
return
|
|
15
|
-
const isLastItem = index === (this.items.length - 1);
|
|
16
|
-
return (h("li", Object.assign({ class: "breadcrumb__item", id: item.id }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`ezBreadcrumbItem_${item.id}`) }), item.iconName && h("ez-icon", Object.assign({ class: `breadcrumb__item--icon ${isLastItem ? 'active-icon' : ''}`, size: "small", iconName: item.iconName }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`iconItem${item.id}`)}` })), h("p", { class: `breadcrumb__item--label ${isLastItem ? 'active' : ''}`, onClick: !isLastItem ? () => this.handleItemClick(item) : undefined }, item.label), !isLastItem && h("ez-icon", Object.assign({ class: "breadcrumb__item--chevron", size: "small", iconName: "chevron-right" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`iconPath${item.id}`)}` }))));
|
|
17
|
-
}))));
|
|
228
|
+
return this.getItemContent();
|
|
18
229
|
}
|
|
19
230
|
static get is() { return "ez-breadcrumb"; }
|
|
20
231
|
static get encapsulation() { return "shadow"; }
|
|
@@ -52,13 +263,75 @@ export class EzBreadcrumb {
|
|
|
52
263
|
"text": "Lista de itens do breadcrumb."
|
|
53
264
|
},
|
|
54
265
|
"defaultValue": "[]"
|
|
266
|
+
},
|
|
267
|
+
"fillMode": {
|
|
268
|
+
"type": "string",
|
|
269
|
+
"mutable": true,
|
|
270
|
+
"complexType": {
|
|
271
|
+
"original": "\"auto\" | \"regular\"",
|
|
272
|
+
"resolved": "\"auto\" | \"regular\"",
|
|
273
|
+
"references": {}
|
|
274
|
+
},
|
|
275
|
+
"required": false,
|
|
276
|
+
"optional": false,
|
|
277
|
+
"docs": {
|
|
278
|
+
"tags": [],
|
|
279
|
+
"text": "Define o modo de uso do Breadcrumb."
|
|
280
|
+
},
|
|
281
|
+
"attribute": "fill-mode",
|
|
282
|
+
"reflect": false,
|
|
283
|
+
"defaultValue": "\"auto\""
|
|
284
|
+
},
|
|
285
|
+
"maxItems": {
|
|
286
|
+
"type": "number",
|
|
287
|
+
"mutable": true,
|
|
288
|
+
"complexType": {
|
|
289
|
+
"original": "number",
|
|
290
|
+
"resolved": "number",
|
|
291
|
+
"references": {}
|
|
292
|
+
},
|
|
293
|
+
"required": false,
|
|
294
|
+
"optional": false,
|
|
295
|
+
"docs": {
|
|
296
|
+
"tags": [],
|
|
297
|
+
"text": "Define o limite m\u00E1ximo de itens a serem renderizados."
|
|
298
|
+
},
|
|
299
|
+
"attribute": "max-items",
|
|
300
|
+
"reflect": false,
|
|
301
|
+
"defaultValue": "4"
|
|
302
|
+
},
|
|
303
|
+
"positionEllipsis": {
|
|
304
|
+
"type": "number",
|
|
305
|
+
"mutable": true,
|
|
306
|
+
"complexType": {
|
|
307
|
+
"original": "number",
|
|
308
|
+
"resolved": "number",
|
|
309
|
+
"references": {}
|
|
310
|
+
},
|
|
311
|
+
"required": false,
|
|
312
|
+
"optional": false,
|
|
313
|
+
"docs": {
|
|
314
|
+
"tags": [],
|
|
315
|
+
"text": "Define a posi\u00E7\u00E3o do Ellipsis nos itens vis\u00EDveis do Breadcrumb."
|
|
316
|
+
},
|
|
317
|
+
"attribute": "position-ellipsis",
|
|
318
|
+
"reflect": false,
|
|
319
|
+
"defaultValue": "1"
|
|
55
320
|
}
|
|
56
321
|
};
|
|
57
322
|
}
|
|
323
|
+
static get states() {
|
|
324
|
+
return {
|
|
325
|
+
"visibleItems": {},
|
|
326
|
+
"hiddenItems": {},
|
|
327
|
+
"showDropdown": {},
|
|
328
|
+
"collapseConfigPosition": {}
|
|
329
|
+
};
|
|
330
|
+
}
|
|
58
331
|
static get events() {
|
|
59
332
|
return [{
|
|
60
|
-
"method": "
|
|
61
|
-
"name": "
|
|
333
|
+
"method": "selectedItem",
|
|
334
|
+
"name": "selectedItem",
|
|
62
335
|
"bubbles": true,
|
|
63
336
|
"cancelable": true,
|
|
64
337
|
"composed": true,
|
|
@@ -78,4 +351,13 @@ export class EzBreadcrumb {
|
|
|
78
351
|
}];
|
|
79
352
|
}
|
|
80
353
|
static get elementRef() { return "_element"; }
|
|
354
|
+
static get watchers() {
|
|
355
|
+
return [{
|
|
356
|
+
"propName": "items",
|
|
357
|
+
"methodName": "watchPropHandler"
|
|
358
|
+
}, {
|
|
359
|
+
"propName": "hiddenItems",
|
|
360
|
+
"methodName": "watchPropHiddenItems"
|
|
361
|
+
}];
|
|
362
|
+
}
|
|
81
363
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
+
export const BreadcrumbItem = (props) => {
|
|
4
|
+
const { items, selectedItem, itemsHidden, showDropdown, handleShowDropdown, collapseConfigPosition, ellipsesPositionedEnd } = props;
|
|
5
|
+
const formatDropdownItems = () => {
|
|
6
|
+
return itemsHidden.map((item) => ({
|
|
7
|
+
id: item.id,
|
|
8
|
+
label: item.label,
|
|
9
|
+
type: 'item',
|
|
10
|
+
children: null,
|
|
11
|
+
iconName: item.iconName || null,
|
|
12
|
+
subAction: null,
|
|
13
|
+
group: null
|
|
14
|
+
}));
|
|
15
|
+
};
|
|
16
|
+
const onClickEllipsis = (evt) => {
|
|
17
|
+
evt.stopPropagation();
|
|
18
|
+
handleShowDropdown(!showDropdown);
|
|
19
|
+
};
|
|
20
|
+
const createEllipsis = (item) => {
|
|
21
|
+
return (h("li", Object.assign({ class: "breadcrumb__item", onClick: evt => onClickEllipsis(evt) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`ezBreadcrumbItem_ellipsis`) }), ellipsesPositionedEnd && h("ez-icon", Object.assign({ class: "breadcrumb__item--chevron", size: "small", iconName: "chevron-right" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`iconPath${item.id}`)}` })), h("span", { class: "ellipses__item" }, "..."), ellipsesPositionedEnd || h("ez-icon", Object.assign({ class: "breadcrumb__item--chevron", size: "small", iconName: "chevron-right" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`iconPath${item.id}`)}` })), showDropdown &&
|
|
22
|
+
h("ez-dropdown", Object.assign({ class: "dropdown-ellipsis", items: formatDropdownItems(), onEzClick: (evt) => {
|
|
23
|
+
const { id, label, iconName } = evt.detail;
|
|
24
|
+
selectedItem.emit({ id, label, iconName });
|
|
25
|
+
} }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("dropdown")}` }))));
|
|
26
|
+
};
|
|
27
|
+
return (h("div", { class: "breadcrumb__items" }, items.map((item, index) => {
|
|
28
|
+
const isLastItem = index === (items.length - 1);
|
|
29
|
+
return (h("div", { class: "breadcrumb__group" }, collapseConfigPosition === index && createEllipsis(item), h("li", Object.assign({ class: "breadcrumb__item", id: item.id }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`ezBreadcrumb_item_${item.id}_${item.label}`) }), item.iconName && h("ez-icon", Object.assign({ class: `breadcrumb__item--icon ${(isLastItem && !ellipsesPositionedEnd) ? 'active-icon' : ''}`, size: "small", iconName: item.iconName }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`iconItem${item.id}`)}` })), h("p", { class: `breadcrumb__item--label ${(isLastItem && !ellipsesPositionedEnd) ? 'active' : ''}`, onClick: (ellipsesPositionedEnd || !isLastItem) ? () => selectedItem.emit(item) : undefined }, item.label), !isLastItem && h("ez-icon", Object.assign({ class: "breadcrumb__item--chevron", size: "small", iconName: "chevron-right" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`iconPath${item.id}`)}` }))), (collapseConfigPosition - 1 === index && ellipsesPositionedEnd) && createEllipsis(item)));
|
|
30
|
+
})));
|
|
31
|
+
};
|