@firestitch/filter 13.4.1 → 14.0.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/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/16/25/214635fa124a83a4fe3a52bde70e7124d9d011a5d176790a9c607bf1f5ed27cadefc4a1b5a225c0bda11250a180ca5798773e0c108e8d5e2d8559d2f9eed +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/44/f9/ee834587d4ac4a429d8c4af2e1562028c7432ac179f9699f2990ab3dadc8e4f66ae45bf22625aedf47fad137e2de39a9b99141784e56d5123544f90c922a +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/4d/89/993c2eaff9e0cfca023676bf3f2d3d446f6b6cc90eec839075529d155102b2808a8b44e259d357704acd43143c12af5a5916b4e291a799164b722142ee8e +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/52/cb/71f80b48163c432fcb05ac0f736ae7cae10318713c98c74739b3eb5d83ebce635b1a7c77d357b1a4b13a9ae9cfe43348538e4336c25c234551f1e80f0567 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/54/f6/73f0d8ea64a18aa71d80a2cf99d6eb4a2cd345e943127e018913d0f76e9575fabe3aee5002ee4da996e661662d474ad31e9a77f2858c68eed532c2d45d47 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/61/84/7f56389ef39faf5c5b6ad292f668ec6cc5cb6e476d94b1740bdadb9832e3de22a0032b90811f02c80d3d56be5f5e32d8bb900e17ebcb09db379befddc221 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/69/d3/d48ad36dd0a576c4d6f8af3a2ee671037639b0a8d91679992dcbd9dabc284bf316c3126201837e931a162f23cdc4a505608bb64df8e87f59a17364890873 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/70/92/ac80dcd48732b949f163abf36c48b0912598d2bb66e5c1f2056fef872f59fb1b591abbf3bfdbf461a46cbd507eea05a6bd0f14ba3d573f1684cbc78bd094 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/73/10/12664696206dcdab6b084331532b234c439acef8a6428af667a2e1bb1c15e2055b3ac70f44fd8bf508396d3e11a798b40849fd66dbdbd0ff9d9d7e780edd +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/74/f6/4c2db73499d08279895e1ab6e2fb65baa613d31218b6968f74143ba03819c72a2720b927ca5a708dd484c0bc6763124e62ce9c2e652f71b740cb2d29ae03 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/78/30/8eedd8d752a08df898806b01abde5b4c1809f6edcba95fcf112c006833b34986c295b62a7e47cd73297c3da78ca6072ef18ba502b6efdd6048dbdbbcd257 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/8c/f8/d9f30e3e898c99e8c3157d4c9157dead1b1115ea4db50aced0c33713cd394bb770b182d1d5087c821d22b2abb99e288191ba9e30954ea4ed9ab6ff70d391 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/8d/53/ad58764bc240411378ae1c47c0c20525da378a3b143795a11bc3fdbf6c9cde6fb2de6c3947d673d5872b9ce205d6274114b3b4dfd27609a636df7fd0b600 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/8f/74/3ed29367f32f9c909f5898704561eb1ebe5cdabba507ba08cbeeaeecd274d020b1401ba871938be899025a265299f8be66c59d59b574a996a74b2987d98e +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/a1/ac/1dbcf215585477c3f70180cb40186b5119d9ad1d27b2e0dcde66034c950e334ce0577409535c29bb15d2e6c9238eb9e841177fc62d3949a58bbbb397238d +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/a3/08/068a7a29e9cc2385b62d4b0fc14b04a7f09ed469d9b79bb754e37d4933b0ab8aa171b286080e20a11e67f42b8558a4bda64aa03ca097001ecda5c25a9015 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/ae/6c/352ab77e603fa53f25ab95cd6fd19a230095b212464689ab76c89db8d97bd0f221c27fbd84d0767fb5ce7e33f5feb175a9256ab35cf216d30dd3263b6b14 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/content-v2/sha512/b6/38/eb8a1b6bd6265968335935cbc2763fbcbb9cd4e32dd58a5234bfd87379ee840044338eeae5f126da9936d21ed423071cfbca6748ee153235addf874824f7 +1 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/01/3c/d4dca899e5bd80c43ed2e78ec79687adc272ff835d03f0ae48cb881ddd83 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/05/a7/da2d9625c1bc294409dbf750062e363a1abbe39b51177bfb7e5a9aa9ae81 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/08/f1/b2e705e45544df7c77f4238b558d569a1215422c2086df9140963f960eef +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/21/1d/398c87beb2402502d4e706beedd98ea707f31b441d6aa7711eef62a0439b +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/26/0b/ee2b1cad7f114e99f8d4da848bd6ceb4e849178b50723d9dcd10f39fb05c +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/26/98/b8614f38ea6fefe80f96f06adb98d925eccfae9eec0937c645a42034614c +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/64/4d/18a7b240783e7b3de33ad33724d2b43e8f3349e840ccab571ca3c6c51c00 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/64/70/77036e049a76cab5a64caa9cba4b603631c7e9e2f47e6c5fbc7f39d67a2f +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/6c/5d/700bf777ddebfd9b8f15e2709674069747b6fcd37376049712828252ca92 +3 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/71/89/4e4e3808e28a4a95a98391ab38f87f165ae234aefd4231092d1f531f56b3 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/7c/c2/bd7b21a07f8b1da7797f40df86dc4289416305c26464c6b965a336fd3975 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/85/64/cb2f22b4df13a70eb519564e382de3d7dd3747bc0cab1109017f8934cff8 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/96/b1/2730596477eee53fc70082999f48e373f6795e68d21e04234a45131added +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/af/e4/165326aa8daa8e07ac9e02bde3d64a31b00d1b2b59a797a51a89456d2ad6 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/cd/96/32e83b96bce723e8ad58fdb7c43cf0002b3e0561309899e8b2a75204cbff +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/dd/38/1f423a0e17cf4e99ef3c880daeb533cdce9275226cb2f617aed52e881e59 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/e4/e8/f48bdfbec024c932fd928e4db790b6454d090d4db31e9d69201a5e1ea466 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/ee/59/16a63690de125da5067876d4ccf122230175174f3489e48893448bcbdcd3 +2 -0
- package/.angular/cache/14.2.13/ng-packagr/index-v5/fd/46/71e9d6d1a123ed68ce03aa617dcaaad4ad9c5a9193f1281166766c453621 +3 -0
- package/.angulardoc.json +4 -0
- package/.editorconfig +15 -0
- package/.eslintrc.json +9 -0
- package/.gitmodules +3 -0
- package/angular.json +163 -0
- package/babel.config.js +11 -0
- package/jest.config.js +24 -0
- package/{app → package/app}/classes/actions-controller.d.ts +41 -41
- package/{app → package/app}/components/action-button/action-button.component.d.ts +9 -9
- package/{app → package/app}/components/action-kebab-actions/action-kebab-actions.component.d.ts +7 -7
- package/{app → package/app}/components/actions/actions.component.d.ts +13 -13
- package/{app → package/app}/components/filter/filter.component.d.ts +204 -204
- package/{app → package/app}/components/filter-chip/filter-chip.component.d.ts +26 -26
- package/{app → package/app}/components/filter-chip-content/filter-chip-content.component.d.ts +18 -18
- package/{app → package/app}/components/filter-chips/filter-chips.component.d.ts +9 -9
- package/{app → package/app}/components/filter-drawer/filter-drawer.component.d.ts +30 -30
- package/{app → package/app}/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +15 -15
- package/{app → package/app}/components/filters-item/autocomplete/autocomplete.component.d.ts +14 -14
- package/{app → package/app}/components/filters-item/autocompletechips/autocompletechips.component.d.ts +16 -16
- package/{app → package/app}/components/filters-item/base-item/base-item.component.d.ts +25 -25
- package/{app → package/app}/components/filters-item/checkbox/checkbox.component.d.ts +11 -11
- package/{app → package/app}/components/filters-item/chips/chips.component.d.ts +13 -13
- package/{app → package/app}/components/filters-item/date/date.component.d.ts +20 -20
- package/{app → package/app}/components/filters-item/date-range/date-range.component.d.ts +15 -15
- package/{app → package/app}/components/filters-item/filter-item.component.d.ts +39 -39
- package/{app → package/app}/components/filters-item/range/range.component.d.ts +15 -15
- package/{app → package/app}/components/filters-item/select/backdrop/backdrop.component.d.ts +6 -6
- package/{app → package/app}/components/filters-item/select/groups/groups.component.d.ts +12 -12
- package/{app → package/app}/components/filters-item/select/multiple/multiple.component.d.ts +15 -15
- package/{app → package/app}/components/filters-item/select/select.component.d.ts +23 -23
- package/{app → package/app}/components/filters-item/select/simple/simple.component.d.ts +14 -14
- package/{app → package/app}/components/filters-item/text/text.component.d.ts +19 -19
- package/{app → package/app}/components/filters-item/week/week.component.d.ts +12 -12
- package/{app → package/app}/components/saved-filter/index.d.ts +3 -3
- package/{app → package/app}/components/saved-filter/saved-filter-edit/index.d.ts +1 -1
- package/{app → package/app}/components/saved-filter/saved-filter-edit/saved-filter-edit.component.d.ts +18 -18
- package/{app → package/app}/components/saved-filter/saved-filter-manage/index.d.ts +1 -1
- package/{app → package/app}/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +16 -16
- package/{app → package/app}/components/saved-filter/saved-filters-menu/index.d.ts +1 -1
- package/{app → package/app}/components/saved-filter/saved-filters-menu/saved-filters-menu.component.d.ts +23 -23
- package/{app → package/app}/consts/query-param-delimiter.d.ts +1 -1
- package/{app → package/app}/directives/focus-to-item/focus-to-item.directive.d.ts +27 -27
- package/{app → package/app}/directives/status-bar/status-bar.directive.d.ts +8 -8
- package/{app → package/app}/enums/action-mode.enum.d.ts +6 -6
- package/{app → package/app}/enums/action-type.enum.d.ts +9 -9
- package/{app → package/app}/enums/button-style.d.ts +9 -9
- package/{app → package/app}/enums/index.d.ts +6 -6
- package/{app → package/app}/enums/item-date-mode.enum.d.ts +5 -5
- package/{app → package/app}/enums/item-type.enum.d.ts +15 -15
- package/{app → package/app}/enums/picker-view-type.enum.d.ts +7 -7
- package/{app → package/app}/fs-filter.module.d.ts +70 -70
- package/{app → package/app}/helpers/build-query-params.d.ts +3 -3
- package/{app → package/app}/helpers/compare.d.ts +2 -2
- package/{app → package/app}/helpers/create-filter-item.d.ts +14 -14
- package/{app → package/app}/helpers/find-value.d.ts +1 -1
- package/{app → package/app}/helpers/get-range-name.d.ts +1 -1
- package/{app → package/app}/helpers/parse-date.d.ts +1 -1
- package/{app → package/app}/helpers/parse-item-value-from-stored.d.ts +1 -1
- package/{app → package/app}/helpers/query-param-transformers.d.ts +2 -2
- package/{app → package/app}/helpers/restore-items.d.ts +12 -12
- package/{app → package/app}/injectors/filter-config.d.ts +2 -2
- package/{app → package/app}/injectors/filter-drawer-data.d.ts +2 -2
- package/{app → package/app}/injectors/filter-drawer-overlay.d.ts +2 -2
- package/{app → package/app}/interfaces/action.interface.d.ts +81 -81
- package/{app → package/app}/interfaces/config.interface.d.ts +66 -66
- package/{app → package/app}/interfaces/external-params.interface.d.ts +3 -3
- package/{app → package/app}/interfaces/filter.interface.d.ts +4 -4
- package/{app → package/app}/interfaces/index.d.ts +6 -6
- package/{app → package/app}/interfaces/items/autocomplete-chips.interface.d.ts +15 -15
- package/{app → package/app}/interfaces/items/autocomplete.interface.d.ts +9 -9
- package/{app → package/app}/interfaces/items/base.interface.d.ts +29 -29
- package/{app → package/app}/interfaces/items/checkbox.interface.d.ts +7 -7
- package/{app → package/app}/interfaces/items/chips.interface.d.ts +6 -6
- package/{app → package/app}/interfaces/items/date-range.interface.d.ts +8 -8
- package/{app → package/app}/interfaces/items/date.interface.d.ts +7 -7
- package/{app → package/app}/interfaces/items/range.interface.d.ts +13 -13
- package/{app → package/app}/interfaces/items/select.interface.d.ts +20 -20
- package/{app → package/app}/interfaces/items/text.interface.d.ts +9 -9
- package/{app → package/app}/interfaces/items/week.interface.d.ts +7 -7
- package/{app → package/app}/interfaces/saved-filters.interface.d.ts +18 -18
- package/{app → package/app}/interfaces/update-filter-item.interface.d.ts +4 -4
- package/{app → package/app}/models/action-menu-item.model.d.ts +23 -23
- package/{app → package/app}/models/action.model.d.ts +54 -54
- package/{app → package/app}/models/filter-config.d.ts +31 -31
- package/{app → package/app}/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
- package/{app → package/app}/models/items/autocomplete-chips-item.d.ts +20 -20
- package/{app → package/app}/models/items/autocomplete-item.d.ts +11 -11
- package/{app → package/app}/models/items/base-item.d.ts +80 -80
- package/{app → package/app}/models/items/checkbox-item.d.ts +17 -17
- package/{app → package/app}/models/items/chips-item.d.ts +18 -18
- package/{app → package/app}/models/items/date/base-date-item.d.ts +14 -14
- package/{app → package/app}/models/items/date-item.d.ts +8 -8
- package/{app → package/app}/models/items/date-range/base-date-range-item.d.ts +21 -21
- package/{app → package/app}/models/items/date-range-item.d.ts +6 -6
- package/{app → package/app}/models/items/date-time-item.d.ts +7 -7
- package/{app → package/app}/models/items/date-time-range-item.d.ts +6 -6
- package/{app → package/app}/models/items/range-item.d.ts +23 -23
- package/{app → package/app}/models/items/select/base-select-item.d.ts +13 -13
- package/{app → package/app}/models/items/select/multiple-select-item.d.ts +14 -14
- package/{app → package/app}/models/items/select/simple-select-item.d.ts +14 -14
- package/{app → package/app}/models/items/select-item.d.ts +8 -8
- package/{app → package/app}/models/items/text-item.d.ts +15 -15
- package/{app → package/app}/models/items/week-item.d.ts +18 -18
- package/{app → package/app}/pipes/remove-isolate-value.pipe.d.ts +8 -8
- package/{app → package/app}/providers/filter-meta.d.ts +5 -5
- package/{app → package/app}/services/external-params/persistance-params-controller.service.d.ts +22 -22
- package/{app → package/app}/services/external-params/query-params-controller.service.d.ts +22 -22
- package/{app → package/app}/services/external-params/saved-filters-controller.service.d.ts +40 -40
- package/{app → package/app}/services/external-params-controller.service.d.ts +42 -42
- package/{app → package/app}/services/filter-overlay.service.d.ts +36 -36
- package/{app → package/app}/services/focus-controller.service.d.ts +18 -18
- package/{app → package/app}/services/items-store.service.d.ts +69 -69
- package/{esm2020 → package/esm2020}/app/classes/actions-controller.mjs +126 -126
- package/{esm2020 → package/esm2020}/app/components/action-button/action-button.component.mjs +21 -21
- package/{esm2020 → package/esm2020}/app/components/action-kebab-actions/action-kebab-actions.component.mjs +16 -16
- package/{esm2020 → package/esm2020}/app/components/actions/actions.component.mjs +41 -41
- package/{esm2020 → package/esm2020}/app/components/filter/filter.component.mjs +613 -613
- package/{esm2020 → package/esm2020}/app/components/filter-chip/filter-chip.component.mjs +85 -85
- package/{esm2020 → package/esm2020}/app/components/filter-chip-content/filter-chip-content.component.mjs +78 -78
- package/{esm2020 → package/esm2020}/app/components/filter-chips/filter-chips.component.mjs +18 -18
- package/{esm2020 → package/esm2020}/app/components/filter-drawer/filter-drawer.component.mjs +70 -70
- package/{esm2020 → package/esm2020}/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +40 -40
- package/{esm2020 → package/esm2020}/app/components/filters-item/autocomplete/autocomplete.component.mjs +26 -26
- package/{esm2020 → package/esm2020}/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +41 -41
- package/{esm2020 → package/esm2020}/app/components/filters-item/base-item/base-item.component.mjs +62 -62
- package/{esm2020 → package/esm2020}/app/components/filters-item/checkbox/checkbox.component.mjs +20 -20
- package/{esm2020 → package/esm2020}/app/components/filters-item/chips/chips.component.mjs +27 -27
- package/{esm2020 → package/esm2020}/app/components/filters-item/date/date.component.mjs +42 -42
- package/{esm2020 → package/esm2020}/app/components/filters-item/date-range/date-range.component.mjs +33 -33
- package/{esm2020 → package/esm2020}/app/components/filters-item/filter-item.component.mjs +79 -79
- package/{esm2020 → package/esm2020}/app/components/filters-item/range/range.component.mjs +44 -44
- package/{esm2020 → package/esm2020}/app/components/filters-item/select/backdrop/backdrop.component.mjs +11 -11
- package/{esm2020 → package/esm2020}/app/components/filters-item/select/groups/groups.component.mjs +29 -29
- package/{esm2020 → package/esm2020}/app/components/filters-item/select/multiple/multiple.component.mjs +56 -56
- package/{esm2020 → package/esm2020}/app/components/filters-item/select/select.component.mjs +50 -50
- package/{esm2020 → package/esm2020}/app/components/filters-item/select/simple/simple.component.mjs +42 -42
- package/package/esm2020/app/components/filters-item/text/text.component.mjs +49 -0
- package/{esm2020 → package/esm2020}/app/components/filters-item/week/week.component.mjs +24 -24
- package/{esm2020 → package/esm2020}/app/components/saved-filter/index.mjs +3 -3
- package/{esm2020 → package/esm2020}/app/components/saved-filter/saved-filter-edit/index.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.mjs +49 -49
- package/{esm2020 → package/esm2020}/app/components/saved-filter/saved-filter-manage/index.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +39 -39
- package/{esm2020 → package/esm2020}/app/components/saved-filter/saved-filters-menu/index.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.mjs +51 -51
- package/{esm2020 → package/esm2020}/app/consts/query-param-delimiter.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/directives/focus-to-item/focus-to-item.directive.mjs +129 -129
- package/{esm2020 → package/esm2020}/app/directives/status-bar/status-bar.directive.mjs +15 -15
- package/{esm2020 → package/esm2020}/app/enums/action-mode.enum.mjs +7 -7
- package/{esm2020 → package/esm2020}/app/enums/action-type.enum.mjs +11 -11
- package/{esm2020 → package/esm2020}/app/enums/button-style.mjs +10 -10
- package/{esm2020 → package/esm2020}/app/enums/index.mjs +6 -6
- package/{esm2020 → package/esm2020}/app/enums/item-date-mode.enum.mjs +6 -6
- package/{esm2020 → package/esm2020}/app/enums/item-type.enum.mjs +16 -16
- package/{esm2020 → package/esm2020}/app/enums/picker-view-type.enum.mjs +8 -8
- package/{esm2020 → package/esm2020}/app/fs-filter.module.mjs +261 -263
- package/{esm2020 → package/esm2020}/app/helpers/build-query-params.mjs +32 -32
- package/{esm2020 → package/esm2020}/app/helpers/compare.mjs +37 -37
- package/{esm2020 → package/esm2020}/app/helpers/create-filter-item.mjs +54 -54
- package/{esm2020 → package/esm2020}/app/helpers/find-value.mjs +12 -12
- package/{esm2020 → package/esm2020}/app/helpers/get-range-name.mjs +8 -8
- package/{esm2020 → package/esm2020}/app/helpers/parse-date.mjs +7 -7
- package/{esm2020 → package/esm2020}/app/helpers/parse-item-value-from-stored.mjs +80 -80
- package/{esm2020 → package/esm2020}/app/helpers/query-param-transformers.mjs +8 -8
- package/{esm2020 → package/esm2020}/app/helpers/restore-items.mjs +48 -48
- package/{esm2020 → package/esm2020}/app/injectors/filter-config.mjs +2 -2
- package/{esm2020 → package/esm2020}/app/injectors/filter-drawer-data.mjs +2 -2
- package/{esm2020 → package/esm2020}/app/injectors/filter-drawer-overlay.mjs +2 -2
- package/{esm2020 → package/esm2020}/app/interfaces/action.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/config.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/external-params.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/filter.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/index.mjs +6 -6
- package/{esm2020 → package/esm2020}/app/interfaces/items/autocomplete-chips.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/autocomplete.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/base.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/checkbox.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/chips.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/date-range.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/date.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/range.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/select.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/text.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/items/week.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/saved-filters.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/interfaces/update-filter-item.interface.mjs +1 -1
- package/{esm2020 → package/esm2020}/app/models/action-menu-item.model.mjs +66 -66
- package/{esm2020 → package/esm2020}/app/models/action.model.mjs +129 -129
- package/{esm2020 → package/esm2020}/app/models/filter-config.mjs +66 -66
- package/{esm2020 → package/esm2020}/app/models/items/autocomplete/base-autocomplete-item.mjs +13 -13
- package/{esm2020 → package/esm2020}/app/models/items/autocomplete-chips-item.mjs +60 -60
- package/{esm2020 → package/esm2020}/app/models/items/autocomplete-item.mjs +32 -32
- package/{esm2020 → package/esm2020}/app/models/items/base-item.mjs +233 -233
- package/{esm2020 → package/esm2020}/app/models/items/checkbox-item.mjs +49 -49
- package/{esm2020 → package/esm2020}/app/models/items/chips-item.mjs +88 -88
- package/{esm2020 → package/esm2020}/app/models/items/date/base-date-item.mjs +47 -47
- package/{esm2020 → package/esm2020}/app/models/items/date-item.mjs +18 -18
- package/{esm2020 → package/esm2020}/app/models/items/date-range/base-date-range-item.mjs +134 -134
- package/{esm2020 → package/esm2020}/app/models/items/date-range-item.mjs +6 -6
- package/{esm2020 → package/esm2020}/app/models/items/date-time-item.mjs +9 -9
- package/{esm2020 → package/esm2020}/app/models/items/date-time-range-item.mjs +6 -6
- package/{esm2020 → package/esm2020}/app/models/items/range-item.mjs +82 -82
- package/{esm2020 → package/esm2020}/app/models/items/select/base-select-item.mjs +36 -36
- package/{esm2020 → package/esm2020}/app/models/items/select/multiple-select-item.mjs +87 -87
- package/{esm2020 → package/esm2020}/app/models/items/select/simple-select-item.mjs +65 -65
- package/{esm2020 → package/esm2020}/app/models/items/select-item.mjs +10 -10
- package/{esm2020 → package/esm2020}/app/models/items/text-item.mjs +33 -33
- package/{esm2020 → package/esm2020}/app/models/items/week-item.mjs +93 -93
- package/{esm2020 → package/esm2020}/app/pipes/remove-isolate-value.pipe.mjs +20 -20
- package/{esm2020 → package/esm2020}/app/providers/filter-meta.mjs +9 -9
- package/{esm2020 → package/esm2020}/app/services/external-params/persistance-params-controller.service.mjs +57 -57
- package/{esm2020 → package/esm2020}/app/services/external-params/query-params-controller.service.mjs +61 -61
- package/{esm2020 → package/esm2020}/app/services/external-params/saved-filters-controller.service.mjs +162 -162
- package/{esm2020 → package/esm2020}/app/services/external-params-controller.service.mjs +178 -178
- package/{esm2020 → package/esm2020}/app/services/filter-overlay.service.mjs +121 -121
- package/{esm2020 → package/esm2020}/app/services/focus-controller.service.mjs +29 -29
- package/{esm2020 → package/esm2020}/app/services/items-store.service.mjs +344 -344
- package/{esm2020 → package/esm2020}/firestitch-filter.mjs +4 -4
- package/{esm2020 → package/esm2020}/public_api.mjs +35 -35
- package/{fesm2015 → package/fesm2015}/firestitch-filter.mjs +4383 -4385
- package/package/fesm2015/firestitch-filter.mjs.map +1 -0
- package/{fesm2020 → package/fesm2020}/firestitch-filter.mjs +4372 -4374
- package/package/fesm2020/firestitch-filter.mjs.map +1 -0
- package/{firestitch-filter.d.ts → package/index.d.ts} +5 -5
- package/package/package.json +56 -0
- package/{public_api.d.ts → package/public_api.d.ts} +40 -40
- package/package/styles.scss +0 -0
- package/package.json +79 -22
- package/tsconfig.compodoc.json +12 -0
- package/tsconfig.json +10 -0
- package/tslint.json +8 -0
- package/esm2020/app/components/filters-item/text/text.component.mjs +0 -49
- package/fesm2015/firestitch-filter.mjs.map +0 -1
- package/fesm2020/firestitch-filter.mjs.map +0 -1
- /package/{styles.scss → README.MD} +0 -0
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class FsFilterIsolateValues {
|
|
4
|
-
transform(values, isolate) {
|
|
5
|
-
if (!isolate) {
|
|
6
|
-
return values;
|
|
7
|
-
}
|
|
8
|
-
return values.filter((value) => {
|
|
9
|
-
return value.value !== isolate.value;
|
|
10
|
-
});
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
FsFilterIsolateValues.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
FsFilterIsolateValues.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
16
|
-
type: Pipe,
|
|
17
|
-
args: [{
|
|
18
|
-
name: 'fsFilterIsolateValues',
|
|
19
|
-
}]
|
|
20
|
-
}] });
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class FsFilterIsolateValues {
|
|
4
|
+
transform(values, isolate) {
|
|
5
|
+
if (!isolate) {
|
|
6
|
+
return values;
|
|
7
|
+
}
|
|
8
|
+
return values.filter((value) => {
|
|
9
|
+
return value.value !== isolate.value;
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
FsFilterIsolateValues.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsFilterIsolateValues, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
14
|
+
FsFilterIsolateValues.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FsFilterIsolateValues, name: "fsFilterIsolateValues" });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsFilterIsolateValues, decorators: [{
|
|
16
|
+
type: Pipe,
|
|
17
|
+
args: [{
|
|
18
|
+
name: 'fsFilterIsolateValues',
|
|
19
|
+
}]
|
|
20
|
+
}] });
|
|
21
21
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWlzb2xhdGUtdmFsdWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvcGlwZXMvcmVtb3ZlLWlzb2xhdGUtdmFsdWUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFRcEQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxTQUFTLENBQUMsTUFBdUIsRUFBRSxPQUFPO1FBQ3hDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPLE1BQU0sQ0FBQztTQUNmO1FBRUQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDN0IsT0FBTyxLQUFLLENBQUMsS0FBSyxLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFFTCxDQUFDOztrSEFWVSxxQkFBcUI7Z0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSx1QkFBdUI7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuXG5cbkBQaXBlKHtcbiAgbmFtZTogJ2ZzRmlsdGVySXNvbGF0ZVZhbHVlcycsXG59KVxuZXhwb3J0IGNsYXNzIEZzRmlsdGVySXNvbGF0ZVZhbHVlcyBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWVzOiBCYXNlSXRlbTxhbnk+W10sIGlzb2xhdGUpIHtcbiAgICBpZiAoIWlzb2xhdGUpIHtcbiAgICAgIHJldHVybiB2YWx1ZXM7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlcy5maWx0ZXIoKHZhbHVlKSA9PiB7XG4gICAgICByZXR1cm4gdmFsdWUudmFsdWUgIT09IGlzb2xhdGUudmFsdWU7XG4gICAgfSk7XG5cbiAgfVxufVxuIl19
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const FS_FILTER_META = new InjectionToken('fs.filter.meta', {
|
|
3
|
-
providedIn: 'root',
|
|
4
|
-
factory: () => {
|
|
5
|
-
return {
|
|
6
|
-
openedFilters: 0,
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
});
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const FS_FILTER_META = new InjectionToken('fs.filter.meta', {
|
|
3
|
+
providedIn: 'root',
|
|
4
|
+
factory: () => {
|
|
5
|
+
return {
|
|
6
|
+
openedFilters: 0,
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
10
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLW1ldGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL3Byb3ZpZGVycy9maWx0ZXItbWV0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTS9DLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FDekIsSUFBSSxjQUFjLENBQWUsZ0JBQWdCLEVBQy9DO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNaLE9BQU87WUFDTCxhQUFhLEVBQUUsQ0FBQztTQUNqQixDQUFDO0lBQ0osQ0FBQztDQUNGLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNGaWx0ZXJNZXRhIHtcbiAgb3BlbmVkRmlsdGVyczogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgRlNfRklMVEVSX01FVEEgPVxuICBuZXcgSW5qZWN0aW9uVG9rZW48RnNGaWx0ZXJNZXRhPignZnMuZmlsdGVyLm1ldGEnLFxuICAgIHtcbiAgICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICAgIGZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBvcGVuZWRGaWx0ZXJzOiAwLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cbiAgKTtcbiJdfQ==
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
import { Injectable, Optional } from '@angular/core';
|
|
2
|
-
import { Location } from '@angular/common';
|
|
3
|
-
import { ActivatedRoute } from '@angular/router';
|
|
4
|
-
import { MatDialogRef } from '@angular/material/dialog';
|
|
5
|
-
import { DrawerRef } from '@firestitch/drawer';
|
|
6
|
-
import { FsPersistanceStore } from '@firestitch/store';
|
|
7
|
-
import { getNormalizedPath } from '@firestitch/common';
|
|
8
|
-
import { FsStore } from '@firestitch/store';
|
|
9
|
-
import { restoreItems } from '../../helpers/restore-items';
|
|
10
|
-
import { FsFilterItemsStore } from '../items-store.service';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@firestitch/store";
|
|
13
|
-
import * as i2 from "@angular/router";
|
|
14
|
-
import * as i3 from "@angular/common";
|
|
15
|
-
import * as i4 from "../items-store.service";
|
|
16
|
-
import * as i5 from "@angular/material/dialog";
|
|
17
|
-
import * as i6 from "@firestitch/drawer";
|
|
18
|
-
const FILTER_STORE_KEY = 'fs-filter-persist';
|
|
19
|
-
export class PersistanceParamsController extends FsPersistanceStore {
|
|
20
|
-
constructor(_store, _route, _location, _itemsStore, _dialogRef, _drawerRef) {
|
|
21
|
-
super(_store, _route);
|
|
22
|
-
this._location = _location;
|
|
23
|
-
this._itemsStore = _itemsStore;
|
|
24
|
-
this._dialogRef = _dialogRef;
|
|
25
|
-
this._drawerRef = _drawerRef;
|
|
26
|
-
this.STORE_KEY = FILTER_STORE_KEY;
|
|
27
|
-
}
|
|
28
|
-
init(persistanceConfig, namespace, paramsCase) {
|
|
29
|
-
this._paramsCase = paramsCase;
|
|
30
|
-
namespace = namespace ?? getNormalizedPath(this._location);
|
|
31
|
-
const persistanceDisabled = !!this._dialogRef || !!this._drawerRef;
|
|
32
|
-
this.setConfig(persistanceConfig, namespace, persistanceDisabled);
|
|
33
|
-
}
|
|
34
|
-
restore() {
|
|
35
|
-
if (!this.enabled) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
super.restore();
|
|
39
|
-
const items = [
|
|
40
|
-
...this._itemsStore.items,
|
|
41
|
-
this._itemsStore.sortByItem,
|
|
42
|
-
this._itemsStore.sortDirectionItem,
|
|
43
|
-
].filter((item) => !!item);
|
|
44
|
-
if (this._value) {
|
|
45
|
-
this._value.data = restoreItems(this._value.data, items, this._paramsCase);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
PersistanceParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
50
|
-
PersistanceParamsController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
52
|
-
type: Injectable
|
|
53
|
-
}], ctorParameters: function () { return [{ type: i1.FsStore }, { type: i2.ActivatedRoute }, { type: i3.Location }, { type: i4.FsFilterItemsStore }, { type: i5.MatDialogRef, decorators: [{
|
|
54
|
-
type: Optional
|
|
55
|
-
}] }, { type: i6.DrawerRef, decorators: [{
|
|
56
|
-
type: Optional
|
|
57
|
-
}] }]; } });
|
|
1
|
+
import { Injectable, Optional } from '@angular/core';
|
|
2
|
+
import { Location } from '@angular/common';
|
|
3
|
+
import { ActivatedRoute } from '@angular/router';
|
|
4
|
+
import { MatDialogRef } from '@angular/material/dialog';
|
|
5
|
+
import { DrawerRef } from '@firestitch/drawer';
|
|
6
|
+
import { FsPersistanceStore } from '@firestitch/store';
|
|
7
|
+
import { getNormalizedPath } from '@firestitch/common';
|
|
8
|
+
import { FsStore } from '@firestitch/store';
|
|
9
|
+
import { restoreItems } from '../../helpers/restore-items';
|
|
10
|
+
import { FsFilterItemsStore } from '../items-store.service';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@firestitch/store";
|
|
13
|
+
import * as i2 from "@angular/router";
|
|
14
|
+
import * as i3 from "@angular/common";
|
|
15
|
+
import * as i4 from "../items-store.service";
|
|
16
|
+
import * as i5 from "@angular/material/dialog";
|
|
17
|
+
import * as i6 from "@firestitch/drawer";
|
|
18
|
+
const FILTER_STORE_KEY = 'fs-filter-persist';
|
|
19
|
+
export class PersistanceParamsController extends FsPersistanceStore {
|
|
20
|
+
constructor(_store, _route, _location, _itemsStore, _dialogRef, _drawerRef) {
|
|
21
|
+
super(_store, _route);
|
|
22
|
+
this._location = _location;
|
|
23
|
+
this._itemsStore = _itemsStore;
|
|
24
|
+
this._dialogRef = _dialogRef;
|
|
25
|
+
this._drawerRef = _drawerRef;
|
|
26
|
+
this.STORE_KEY = FILTER_STORE_KEY;
|
|
27
|
+
}
|
|
28
|
+
init(persistanceConfig, namespace, paramsCase) {
|
|
29
|
+
this._paramsCase = paramsCase;
|
|
30
|
+
namespace = namespace ?? getNormalizedPath(this._location);
|
|
31
|
+
const persistanceDisabled = !!this._dialogRef || !!this._drawerRef;
|
|
32
|
+
this.setConfig(persistanceConfig, namespace, persistanceDisabled);
|
|
33
|
+
}
|
|
34
|
+
restore() {
|
|
35
|
+
if (!this.enabled) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
super.restore();
|
|
39
|
+
const items = [
|
|
40
|
+
...this._itemsStore.items,
|
|
41
|
+
this._itemsStore.sortByItem,
|
|
42
|
+
this._itemsStore.sortDirectionItem,
|
|
43
|
+
].filter((item) => !!item);
|
|
44
|
+
if (this._value) {
|
|
45
|
+
this._value.data = restoreItems(this._value.data, items, this._paramsCase);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
PersistanceParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PersistanceParamsController, deps: [{ token: i1.FsStore }, { token: i2.ActivatedRoute }, { token: i3.Location }, { token: i4.FsFilterItemsStore }, { token: i5.MatDialogRef, optional: true }, { token: i6.DrawerRef, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
50
|
+
PersistanceParamsController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PersistanceParamsController });
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PersistanceParamsController, decorators: [{
|
|
52
|
+
type: Injectable
|
|
53
|
+
}], ctorParameters: function () { return [{ type: i1.FsStore }, { type: i2.ActivatedRoute }, { type: i3.Location }, { type: i4.FsFilterItemsStore }, { type: i5.MatDialogRef, decorators: [{
|
|
54
|
+
type: Optional
|
|
55
|
+
}] }, { type: i6.DrawerRef, decorators: [{
|
|
56
|
+
type: Optional
|
|
57
|
+
}] }]; } });
|
|
58
58
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc2lzdGFuY2UtcGFyYW1zLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2VydmljZXMvZXh0ZXJuYWwtcGFyYW1zL3BlcnNpc3RhbmNlLXBhcmFtcy1jb250cm9sbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7O0FBRTVELE1BQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7QUFJN0MsTUFBTSxPQUFPLDJCQUE0QixTQUFRLGtCQUF1QztJQUt0RixZQUNFLE1BQWUsRUFDZixNQUFzQixFQUNkLFNBQW1CLEVBQ25CLFdBQStCLEVBQ25CLFVBQWlDLEVBQ2pDLFVBQThCO1FBRWxELEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFMZCxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUF1QjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxDQUFvQjtRQVQxQyxjQUFTLEdBQUcsZ0JBQWdCLENBQUM7SUFZdkMsQ0FBQztJQUVNLElBQUksQ0FDVCxpQkFBc0MsRUFDdEMsU0FBaUIsRUFDakIsVUFBNkI7UUFFN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFFOUIsU0FBUyxHQUFHLFNBQVMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0QsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUVuRSxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRWhCLE1BQU0sS0FBSyxHQUFHO1lBQ1osR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7WUFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVO1lBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCO1NBQ25DLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFDaEIsS0FBSyxFQUNMLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7U0FDSDtJQUNILENBQUM7O3dIQWpEVSwyQkFBMkI7NEhBQTNCLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQUR2QyxVQUFVOzswQkFXTixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IERyYXdlclJlZiB9IGZyb20gJ0BmaXJlc3RpdGNoL2RyYXdlcic7XG5pbXBvcnQgeyBGc1BlcnNpc3RhbmNlU3RvcmUgfSBmcm9tICdAZmlyZXN0aXRjaC9zdG9yZSc7XG5pbXBvcnQgeyBnZXROb3JtYWxpemVkUGF0aCB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5pbXBvcnQgeyBGc1N0b3JlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvc3RvcmUnO1xuXG5pbXBvcnQgeyBGc0ZpbHRlclBlcnNpc3RhbmNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IHJlc3RvcmVJdGVtcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvcmVzdG9yZS1pdGVtcyc7XG5pbXBvcnQgeyBGc0ZpbHRlckl0ZW1zU3RvcmUgfSBmcm9tICcuLi9pdGVtcy1zdG9yZS5zZXJ2aWNlJztcblxuY29uc3QgRklMVEVSX1NUT1JFX0tFWSA9ICdmcy1maWx0ZXItcGVyc2lzdCc7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBlcnNpc3RhbmNlUGFyYW1zQ29udHJvbGxlciBleHRlbmRzIEZzUGVyc2lzdGFuY2VTdG9yZTxGc0ZpbHRlclBlcnNpc3RhbmNlPiB7XG5cbiAgcHJvdGVjdGVkIFNUT1JFX0tFWSA9IEZJTFRFUl9TVE9SRV9LRVk7XG4gIHByb3RlY3RlZCBfcGFyYW1zQ2FzZTogJ3NuYWtlJyB8ICdjYW1lbCc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgX3N0b3JlOiBGc1N0b3JlLFxuICAgIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfbG9jYXRpb246IExvY2F0aW9uLFxuICAgIHByaXZhdGUgX2l0ZW1zU3RvcmU6IEZzRmlsdGVySXRlbXNTdG9yZSxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjx1bmtub3duPixcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9kcmF3ZXJSZWY6IERyYXdlclJlZjx1bmtub3duPixcbiAgKSB7XG4gICAgc3VwZXIoX3N0b3JlLCBfcm91dGUpO1xuICB9XG5cbiAgcHVibGljIGluaXQoXG4gICAgcGVyc2lzdGFuY2VDb25maWc6IEZzRmlsdGVyUGVyc2lzdGFuY2UsXG4gICAgbmFtZXNwYWNlOiBzdHJpbmcsXG4gICAgcGFyYW1zQ2FzZTogJ3NuYWtlJyB8ICdjYW1lbCcsXG4gICk6IHZvaWQge1xuICAgIHRoaXMuX3BhcmFtc0Nhc2UgPSBwYXJhbXNDYXNlO1xuXG4gICAgbmFtZXNwYWNlID0gbmFtZXNwYWNlID8/IGdldE5vcm1hbGl6ZWRQYXRoKHRoaXMuX2xvY2F0aW9uKTtcbiAgICBjb25zdCBwZXJzaXN0YW5jZURpc2FibGVkID0gISF0aGlzLl9kaWFsb2dSZWYgfHwgISF0aGlzLl9kcmF3ZXJSZWY7XG5cbiAgICB0aGlzLnNldENvbmZpZyhwZXJzaXN0YW5jZUNvbmZpZywgbmFtZXNwYWNlLCBwZXJzaXN0YW5jZURpc2FibGVkKTtcbiAgfVxuXG4gIHB1YmxpYyByZXN0b3JlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5lbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3VwZXIucmVzdG9yZSgpO1xuXG4gICAgY29uc3QgaXRlbXMgPSBbXG4gICAgICAuLi50aGlzLl9pdGVtc1N0b3JlLml0ZW1zLFxuICAgICAgdGhpcy5faXRlbXNTdG9yZS5zb3J0QnlJdGVtLFxuICAgICAgdGhpcy5faXRlbXNTdG9yZS5zb3J0RGlyZWN0aW9uSXRlbSxcbiAgICBdLmZpbHRlcigoaXRlbSkgPT4gISFpdGVtKTtcblxuICAgIGlmICh0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5fdmFsdWUuZGF0YSA9IHJlc3RvcmVJdGVtcyhcbiAgICAgICAgdGhpcy5fdmFsdWUuZGF0YSxcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIHRoaXMuX3BhcmFtc0Nhc2VcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
|
package/{esm2020 → package/esm2020}/app/services/external-params/query-params-controller.service.mjs
RENAMED
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { ActivatedRoute } from '@angular/router';
|
|
3
|
-
import { restoreItems } from '../../helpers/restore-items';
|
|
4
|
-
import { FsFilterItemsStore } from '../items-store.service';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/router";
|
|
7
|
-
import * as i2 from "../items-store.service";
|
|
8
|
-
export class QueryParamsController {
|
|
9
|
-
constructor(_route, _itemsStore) {
|
|
10
|
-
this._route = _route;
|
|
11
|
-
this._itemsStore = _itemsStore;
|
|
12
|
-
this._enabled = false;
|
|
13
|
-
}
|
|
14
|
-
get enabled() {
|
|
15
|
-
return this._enabled;
|
|
16
|
-
}
|
|
17
|
-
get fetchedParams() {
|
|
18
|
-
return this._fetchedParams;
|
|
19
|
-
}
|
|
20
|
-
init(enabled, paramsCase) {
|
|
21
|
-
this._enabled = enabled;
|
|
22
|
-
this._paramsCase = paramsCase;
|
|
23
|
-
if (this.enabled) {
|
|
24
|
-
this.fetchFromQueryParams();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
writeStateToQueryParams(params) {
|
|
28
|
-
if (this._enabled) {
|
|
29
|
-
this._replaceState(params);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Parse query and update filter values
|
|
34
|
-
*/
|
|
35
|
-
fetchFromQueryParams() {
|
|
36
|
-
const items = [
|
|
37
|
-
...this._itemsStore.items,
|
|
38
|
-
this._itemsStore.sortByItem,
|
|
39
|
-
this._itemsStore.sortDirectionItem,
|
|
40
|
-
].filter((item) => !!item);
|
|
41
|
-
this._fetchedParams = restoreItems(this._route.snapshot.queryParams, items, this._paramsCase);
|
|
42
|
-
}
|
|
43
|
-
_replaceState(data) {
|
|
44
|
-
const url = new URL(window.location.href);
|
|
45
|
-
Object.keys(data)
|
|
46
|
-
.forEach((name) => {
|
|
47
|
-
if (data[name] === undefined || data[name] === null) {
|
|
48
|
-
url.searchParams.delete(name);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
url.searchParams.set(name, data[name]);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
history.replaceState({}, null, url.pathname + url.search);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
QueryParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
58
|
-
QueryParamsController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
60
|
-
type: Injectable
|
|
61
|
-
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.FsFilterItemsStore }]; } });
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute } from '@angular/router';
|
|
3
|
+
import { restoreItems } from '../../helpers/restore-items';
|
|
4
|
+
import { FsFilterItemsStore } from '../items-store.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/router";
|
|
7
|
+
import * as i2 from "../items-store.service";
|
|
8
|
+
export class QueryParamsController {
|
|
9
|
+
constructor(_route, _itemsStore) {
|
|
10
|
+
this._route = _route;
|
|
11
|
+
this._itemsStore = _itemsStore;
|
|
12
|
+
this._enabled = false;
|
|
13
|
+
}
|
|
14
|
+
get enabled() {
|
|
15
|
+
return this._enabled;
|
|
16
|
+
}
|
|
17
|
+
get fetchedParams() {
|
|
18
|
+
return this._fetchedParams;
|
|
19
|
+
}
|
|
20
|
+
init(enabled, paramsCase) {
|
|
21
|
+
this._enabled = enabled;
|
|
22
|
+
this._paramsCase = paramsCase;
|
|
23
|
+
if (this.enabled) {
|
|
24
|
+
this.fetchFromQueryParams();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
writeStateToQueryParams(params) {
|
|
28
|
+
if (this._enabled) {
|
|
29
|
+
this._replaceState(params);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Parse query and update filter values
|
|
34
|
+
*/
|
|
35
|
+
fetchFromQueryParams() {
|
|
36
|
+
const items = [
|
|
37
|
+
...this._itemsStore.items,
|
|
38
|
+
this._itemsStore.sortByItem,
|
|
39
|
+
this._itemsStore.sortDirectionItem,
|
|
40
|
+
].filter((item) => !!item);
|
|
41
|
+
this._fetchedParams = restoreItems(this._route.snapshot.queryParams, items, this._paramsCase);
|
|
42
|
+
}
|
|
43
|
+
_replaceState(data) {
|
|
44
|
+
const url = new URL(window.location.href);
|
|
45
|
+
Object.keys(data)
|
|
46
|
+
.forEach((name) => {
|
|
47
|
+
if (data[name] === undefined || data[name] === null) {
|
|
48
|
+
url.searchParams.delete(name);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
url.searchParams.set(name, data[name]);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
history.replaceState({}, null, url.pathname + url.search);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
QueryParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: QueryParamsController, deps: [{ token: i1.ActivatedRoute }, { token: i2.FsFilterItemsStore }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
58
|
+
QueryParamsController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: QueryParamsController });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: QueryParamsController, decorators: [{
|
|
60
|
+
type: Injectable
|
|
61
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.FsFilterItemsStore }]; } });
|
|
62
62
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktcGFyYW1zLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2VydmljZXMvZXh0ZXJuYWwtcGFyYW1zL3F1ZXJ5LXBhcmFtcy1jb250cm9sbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBSTVELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsWUFDVSxNQUFzQixFQUN0QixXQUErQjtRQUQvQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFOakMsYUFBUSxHQUFHLEtBQUssQ0FBQztJQU90QixDQUFDO0lBRUosSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRU0sSUFBSSxDQUFDLE9BQWdCLEVBQUUsVUFBNkI7UUFDekQsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFFOUIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVNLHVCQUF1QixDQUFDLE1BQU07UUFDbkMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxvQkFBb0I7UUFDekIsTUFBTSxLQUFLLEdBQUc7WUFDWixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSztZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUI7U0FDbkMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsY0FBYyxHQUFHLFlBQVksQ0FDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUNoQyxLQUFLLEVBQ0wsSUFBSSxDQUFDLFdBQVcsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBSTtRQUN4QixNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ2QsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEIsSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUU7Z0JBQ2xELEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQy9CO2lCQUFNO2dCQUNMLEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7O2tIQWhFVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyByZXN0b3JlSXRlbXMgfSBmcm9tICcuLi8uLi9oZWxwZXJzL3Jlc3RvcmUtaXRlbXMnO1xuaW1wb3J0IHsgRnNGaWx0ZXJJdGVtc1N0b3JlIH0gZnJvbSAnLi4vaXRlbXMtc3RvcmUuc2VydmljZSc7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFF1ZXJ5UGFyYW1zQ29udHJvbGxlciB7XG5cbiAgcHJpdmF0ZSBfZW5hYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9wYXJhbXNDYXNlOiAnc25ha2UnIHwgJ2NhbWVsJztcbiAgcHJpdmF0ZSBfZmV0Y2hlZFBhcmFtczogUmVjb3JkPHN0cmluZywgYW55PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfaXRlbXNTdG9yZTogRnNGaWx0ZXJJdGVtc1N0b3JlXG4gICkge31cblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZldGNoZWRQYXJhbXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZldGNoZWRQYXJhbXM7XG4gIH1cblxuICBwdWJsaWMgaW5pdChlbmFibGVkOiBib29sZWFuLCBwYXJhbXNDYXNlOiAnc25ha2UnIHwgJ2NhbWVsJykge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBlbmFibGVkO1xuICAgIHRoaXMuX3BhcmFtc0Nhc2UgPSBwYXJhbXNDYXNlO1xuXG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy5mZXRjaEZyb21RdWVyeVBhcmFtcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVN0YXRlVG9RdWVyeVBhcmFtcyhwYXJhbXMpIHtcbiAgICBpZiAodGhpcy5fZW5hYmxlZCkgeyBcbiAgICAgIHRoaXMuX3JlcGxhY2VTdGF0ZShwYXJhbXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYXJzZSBxdWVyeSBhbmQgdXBkYXRlIGZpbHRlciB2YWx1ZXNcbiAgICovXG4gIHB1YmxpYyBmZXRjaEZyb21RdWVyeVBhcmFtcygpIHtcbiAgICBjb25zdCBpdGVtcyA9IFtcbiAgICAgIC4uLnRoaXMuX2l0ZW1zU3RvcmUuaXRlbXMsXG4gICAgICB0aGlzLl9pdGVtc1N0b3JlLnNvcnRCeUl0ZW0sXG4gICAgICB0aGlzLl9pdGVtc1N0b3JlLnNvcnREaXJlY3Rpb25JdGVtLFxuICAgIF0uZmlsdGVyKChpdGVtKSA9PiAhIWl0ZW0pO1xuXG4gICAgdGhpcy5fZmV0Y2hlZFBhcmFtcyA9IHJlc3RvcmVJdGVtcyhcbiAgICAgIHRoaXMuX3JvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLFxuICAgICAgaXRlbXMsXG4gICAgICB0aGlzLl9wYXJhbXNDYXNlXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTdGF0ZShkYXRhKSB7XG4gICAgY29uc3QgdXJsID0gbmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZik7XG5cbiAgICBPYmplY3Qua2V5cyhkYXRhKVxuICAgICAgLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgICAgaWYoZGF0YVtuYW1lXSA9PT0gdW5kZWZpbmVkIHx8IGRhdGFbbmFtZV0gPT09IG51bGwpIHtcbiAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmRlbGV0ZShuYW1lKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLnNldChuYW1lLGRhdGFbbmFtZV0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKHt9LCBudWxsLCB1cmwucGF0aG5hbWUgKyB1cmwuc2VhcmNoKTtcbiAgfVxufVxuIl19
|