@dereekb/dbx-web 12.6.15 → 12.6.16
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/esm2022/lib/button/button.component.mjs +1 -1
- package/esm2022/lib/button/button.mjs +2 -0
- package/esm2022/lib/button/index.mjs +2 -1
- package/esm2022/lib/button/progress/abstract.progress.button.directive.mjs +1 -1
- package/esm2022/lib/button/progress/button.progress.config.mjs +1 -1
- package/esm2022/lib/button/progress/spinner.button.component.mjs +6 -6
- package/esm2022/lib/extension/download/blob/download.blob.button.component.mjs +1 -1
- package/esm2022/lib/extension/download/text/download.text.component.mjs +11 -4
- package/esm2022/lib/extension/help/help.view.popover.button.component.mjs +12 -7
- package/esm2022/lib/interaction/upload/upload.button.component.mjs +1 -1
- package/esm2022/lib/interaction/upload/upload.component.mjs +1 -1
- package/fesm2022/dereekb-dbx-web.mjs +74 -63
- package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
- package/lib/action/transition/transition.safety.directive.d.ts +1 -1
- package/lib/button/button.component.d.ts +1 -16
- package/lib/button/button.d.ts +20 -0
- package/lib/button/index.d.ts +1 -0
- package/lib/button/progress/button.progress.config.d.ts +2 -2
- package/lib/button/progress/spinner.button.component.d.ts +1 -1
- package/lib/extension/download/blob/download.blob.button.component.d.ts +1 -1
- package/lib/extension/download/text/download.text.component.d.ts +5 -1
- package/lib/extension/help/help.view.popover.button.component.d.ts +15 -2
- package/lib/interaction/upload/upload.button.component.d.ts +1 -1
- package/lib/interaction/upload/upload.component.d.ts +1 -1
- package/lib/layout/content/_content.scss +16 -1
- package/lib/style/_root-variables.scss +1 -0
- package/lib/style/_variables.scss +3 -0
- package/package.json +1 -1
- package/lib/extension/download/text/download.text.component.scss +0 -0
|
@@ -78,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
78
78
|
standalone: true
|
|
79
79
|
}]
|
|
80
80
|
}] });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvaW50ZXJhY3Rpb24vdXBsb2FkL3VwbG9hZC5idXR0b24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUduRSxPQUFPLEVBQUUsOEJBQThCLEVBQWtDLE1BQU0sNkJBQTZCLENBQUM7QUFDN0csT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBaUJ2RSxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsOEJBQThCO0lBQ3JFLFNBQVMsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUF1QyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUV4RyxJQUFJLEdBQUcsS0FBSyxFQUFpQixDQUFDO0lBQzlCLElBQUksR0FBRyxLQUFLLEVBQWlCLENBQUM7SUFDOUIsV0FBVyxHQUFHLEtBQUssRUFBeUIsQ0FBQztJQUU3QyxZQUFZLEdBQUcsTUFBTSxFQUF3QyxDQUFDO0lBRTlELGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDMUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ25DLE9BQU8sT0FBTyxNQUFNLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLE1B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QVEsRUFBRTs7Ozs7R0FLVDtvQkFDRCxTQUFTLEVBQUUsb0NBQW9DLDhCQUE4QjtvQkFDN0UsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgRWxlbWVudFJlZiwgaW5wdXQsIG91dHB1dCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaWxlQWNjZXB0U3RyaW5nLCBmaWxlQXJyYXlBY2NlcHRNYXRjaEZ1bmN0aW9uIH0gZnJvbSAnLi91cGxvYWQuYWNjZXB0JztcbmltcG9ydCB7IERieEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IERieEJ1dHRvblN0eWxlIH0gZnJvbSAnLi4vLi4vYnV0dG9uL2J1dHRvbic7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQWJzdHJhY3REYnhGaWxlVXBsb2FkQ29tcG9uZW50LCBEYnhGaWxlVXBsb2FkRmlsZXNDaGFuZ2VkRXZlbnQgfSBmcm9tICcuL2Fic3RyYWN0LnVwbG9hZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgcHJvdmlkZURieEZpbGVVcGxvYWRBY3Rpb25Db21wYXRhYmxlIH0gZnJvbSAnLi91cGxvYWQuYWN0aW9uJztcblxuZXhwb3J0IHR5cGUgRGJ4RmlsZVVwbG9hZEJ1dHRvbkZpbGVzQ2hhbmdlZEV2ZW50ID0gRGJ4RmlsZVVwbG9hZEZpbGVzQ2hhbmdlZEV2ZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtZmlsZS11cGxvYWQtYnV0dG9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LWJ1dHRvbiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uU3R5bGUoKVwiIFt0ZXh0XT1cInRleHQoKVwiIFtpY29uXT1cImljb24oKVwiIChidXR0b25DbGljayk9XCJvcGVuSW5wdXQoKVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFNpZ25hbCgpXCIgW3dvcmtpbmddPVwid29ya2luZ1NpZ25hbCgpXCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kYngtYnV0dG9uPlxuICAgIDxpbnB1dCAjZmlsZUlucHV0IGhpZGRlbiB0eXBlPVwiZmlsZVwiIFthdHRyLmFjY2VwdF09XCJidXR0b25BY2NlcHRTaWduYWwoKSA/PyBudWxsXCIgW2F0dHIubXVsdGlwbGVdPVwibXVsdGlwbGVBdHRyaWJ1dGVTaWduYWwoKSA/ICcnIDogbnVsbFwiIChjaGFuZ2UpPVwiZmlsZUlucHV0Q2hhbmdlZCgpXCIgLz5cbiAgYCxcbiAgcHJvdmlkZXJzOiBwcm92aWRlRGJ4RmlsZVVwbG9hZEFjdGlvbkNvbXBhdGFibGUoRGJ4RmlsZVVwbG9hZEJ1dHRvbkNvbXBvbmVudCksXG4gIGltcG9ydHM6IFtEYnhCdXR0b25Db21wb25lbnRdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGaWxlVXBsb2FkQnV0dG9uQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhGaWxlVXBsb2FkQ29tcG9uZW50IHtcbiAgcmVhZG9ubHkgZmlsZUlucHV0ID0gdmlld0NoaWxkLnJlcXVpcmVkPHN0cmluZywgRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50Pj4oJ2ZpbGVJbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcblxuICByZWFkb25seSB0ZXh0ID0gaW5wdXQ8TWF5YmU8c3RyaW5nPj4oKTtcbiAgcmVhZG9ubHkgaWNvbiA9IGlucHV0PE1heWJlPHN0cmluZz4+KCk7XG4gIHJlYWRvbmx5IGJ1dHRvblN0eWxlID0gaW5wdXQ8TWF5YmU8RGJ4QnV0dG9uU3R5bGU+PigpO1xuXG4gIHJlYWRvbmx5IGZpbGVzQ2hhbmdlZCA9IG91dHB1dDxEYnhGaWxlVXBsb2FkQnV0dG9uRmlsZXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgcmVhZG9ubHkgYnV0dG9uQWNjZXB0U2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGFjY2VwdCA9IHRoaXMuYWNjZXB0U2lnbmFsKCk7XG4gICAgcmV0dXJuIHR5cGVvZiBhY2NlcHQgPT09ICdmdW5jdGlvbicgPyB1bmRlZmluZWQgOiBmaWxlQWNjZXB0U3RyaW5nKGFjY2VwdCk7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvbk11bHRpcGxlU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5tdWx0aXBsZVNpZ25hbCgpID8/IGZhbHNlKTtcblxuICByZWFkb25seSBmaWxlc0FjY2VwdGVkRnVuY3Rpb25TaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYWNjZXB0ID0gdGhpcy5hY2NlcHRTaWduYWwoKTtcbiAgICBjb25zdCBtdWx0aXBsZSA9IHRoaXMuYnV0dG9uTXVsdGlwbGVTaWduYWwoKTtcbiAgICByZXR1cm4gdHlwZW9mIGFjY2VwdCA9PT0gJ2Z1bmN0aW9uJyA/IGZpbGVBcnJheUFjY2VwdE1hdGNoRnVuY3Rpb24oeyBtdWx0aXBsZSwgYWNjZXB0IH0pIDogdW5kZWZpbmVkO1xuICB9KTtcblxuICAvKipcbiAgICogVGhlIEhUTUwgYXR0cmlidXRlIHNob3VsZCBub3QgYmUgYWRkZWQgaWYgaXQgaXMgZmFsc2UsIHNvIHdlIHJldHVybiBudWxsLlxuICAgKi9cbiAgcmVhZG9ubHkgbXVsdGlwbGVBdHRyaWJ1dGVTaWduYWwgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5idXR0b25NdWx0aXBsZVNpZ25hbCgpID8gJycgOiBudWxsKSk7XG5cbiAgb3BlbklucHV0KCkge1xuICAgIGNvbnN0IGlucHV0UmVmID0gdGhpcy5maWxlSW5wdXQoKTtcbiAgICBjb25zdCBpbnB1dCA9IGlucHV0UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBjb25zdCBpc0Rpc2FibGVkID0gdGhpcy5kaXNhYmxlZFNpZ25hbCgpO1xuXG4gICAgaWYgKCFpc0Rpc2FibGVkKSB7XG4gICAgICBpbnB1dC5jbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIGZpbGVJbnB1dENoYW5nZWQoKSB7XG4gICAgY29uc3QgaW5wdXRSZWYgPSB0aGlzLmZpbGVJbnB1dCgpO1xuICAgIGNvbnN0IGlucHV0ID0gaW5wdXRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBpc0Rpc2FibGVkID0gdGhpcy5kaXNhYmxlZFNpZ25hbCgpO1xuXG4gICAgaWYgKCFpc0Rpc2FibGVkKSB7XG4gICAgICBjb25zdCBhbGxGaWxlcyA9IGlucHV0LmZpbGVzID8gQXJyYXkuZnJvbShpbnB1dC5maWxlcykgOiBbXTtcbiAgICAgIGNvbnN0IGZpbGVBY2NlcHRGdW5jdGlvbiA9IHRoaXMuZmlsZXNBY2NlcHRlZEZ1bmN0aW9uU2lnbmFsKCk7XG5cbiAgICAgIGlmIChmaWxlQWNjZXB0RnVuY3Rpb24pIHtcbiAgICAgICAgY29uc3QgbWF0Y2hSZXN1bHQgPSBmaWxlQWNjZXB0RnVuY3Rpb24oYWxsRmlsZXMpO1xuICAgICAgICB0aGlzLmZpbGVzQ2hhbmdlZC5lbWl0KHsgYWxsRmlsZXMsIG1hdGNoUmVzdWx0IH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gaWYgbm90IHVzaW5nIGEgZmlsZXNBY2NlcHRlZEZ1bmN0aW9uLCB0aGVuIGFjY2VwdCBhbGwgZmlsZXMgYXMgdGhlIGlucHV0IHNob3VsZCBoYXZlIGZpbHRlcmVkIHRoZW1cbiAgICAgICAgY29uc3QgbXVsdGlwbGUgPSB0aGlzLmJ1dHRvbk11bHRpcGxlU2lnbmFsKCk7XG4gICAgICAgIHRoaXMuZmlsZXNDaGFuZ2VkLmVtaXQoeyBhbGxGaWxlcywgbWF0Y2hSZXN1bHQ6IHsgbXVsdGlwbGUsIGlucHV0OiBhbGxGaWxlcywgYWNjZXB0ZWQ6IGFsbEZpbGVzLCByZWplY3RlZDogW10sIGFjY2VwdGVkVHlwZTogYWxsRmlsZXMsIHJlamVjdGVkVHlwZTogW10gfSB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyByZXNldCB0aGUgaW5wdXQgdmFsdWVcbiAgICBpZiAoaW5wdXQudmFsdWUpIHtcbiAgICAgIGlucHV0LnZhbHVlID0gJyc7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -113,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
113
113
|
standalone: true
|
|
114
114
|
}]
|
|
115
115
|
}] });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9pbnRlcmFjdGlvbi91cGxvYWQvdXBsb2FkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl2RyxPQUFPLEVBQUUsNEJBQTRCLEVBQXdDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0csT0FBTyxFQUFFLDBCQUEwQixFQUFzQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSw4QkFBOEIsRUFBa0MsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUEyQnZFOztHQUVHO0FBb0JILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSw4QkFBOEI7SUFDL0QsTUFBTSxHQUFHLEtBQUssRUFBdUMsQ0FBQztJQUV0RCxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBcUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLDBCQUEwQixFQUFFLENBQUMsQ0FBQztJQUM1RyxNQUFNLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBdUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLDRCQUE0QixFQUFFLENBQUMsQ0FBQztJQUNwSCxXQUFXLEdBQUcsS0FBSyxFQUF5QixDQUFDO0lBRTdDLElBQUksR0FBRyxLQUFLLEVBQTRCLENBQUM7SUFDekMsSUFBSSxHQUFHLEtBQUssRUFBaUIsQ0FBQyxDQUFDLGNBQWM7SUFDN0MsSUFBSSxHQUFHLEtBQUssRUFBaUIsQ0FBQyxDQUFDLGNBQWM7SUFDN0MsSUFBSSxHQUFHLEtBQUssRUFBMkIsQ0FBQyxDQUFDLFlBQVk7SUFFckQsVUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixPQUFPLE1BQU0sRUFBRSxJQUFJLElBQUksSUFBSSxJQUFJLFNBQVMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztJQUVNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDeEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9CLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxJQUFJLEtBQUssU0FBUyxDQUFDO0lBQ2pELENBQUMsQ0FBQyxDQUFDO0lBRU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDdEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9CLE9BQU8sSUFBSSxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssU0FBUyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0lBRU0saUJBQWlCLEdBQUcsS0FBSyxFQUFrQixDQUFDO0lBQzVDLHVCQUF1QixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDL0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDbkQsT0FBTyxNQUFNLEVBQUUsaUJBQWlCLElBQUksaUJBQWlCLENBQUM7SUFDeEQsQ0FBQyxDQUFDLENBQUM7SUFFTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsT0FBTyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksSUFBSSxJQUFJLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFFTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsT0FBTyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksSUFBSSxJQUFJLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFFTSxjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0QsY0FBYyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNELGNBQWMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ3RDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsT0FBTyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxJQUFJLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFFTSxvQkFBb0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkMsT0FBTyxRQUFRLElBQUksTUFBTSxFQUFFLFFBQVEsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQztJQUVNLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDMUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNuQyxPQUFPLE1BQU0sSUFBSSxNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2xDLENBQUMsQ0FBQyxDQUFDO0lBRU0sWUFBWSxHQUFHLE1BQU0sRUFBa0MsQ0FBQztJQUVqRSxXQUFXO1FBQ1QsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUV6RCxJQUFJLGlCQUFpQixFQUFFLENBQUM7WUFDdEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQXlDO1FBQ3hELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUEyQztRQUM1RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO3dHQXBGVSxzQkFBc0I7NEZBQXRCLHNCQUFzQiwwK0JBTHRCLG9DQUFvQyxDQUFDLHNCQUFzQixDQUFDLG1HQVFnQiwwQkFBMEIsMkdBQ3BCLDRCQUE0QixvRUFyQi9HOzs7Ozs7Ozs7OztHQVdULDREQUVTLDBCQUEwQiw4S0FBRSw0QkFBNEIsdUlBQUUsZ0JBQWdCOzs0RkFJekUsc0JBQXNCO2tCQW5CbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7O0dBV1Q7b0JBQ0QsU0FBUyxFQUFFLG9DQUFvQyx3QkFBd0I7b0JBQ3ZFLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixFQUFFLDRCQUE0QixFQUFFLGdCQUFnQixDQUFDO29CQUNyRixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmlsZUFycmF5QWNjZXB0TWF0Y2hDb25maWcgfSBmcm9tICcuL3VwbG9hZC5hY2NlcHQnO1xuaW1wb3J0IHsgRGJ4QnV0dG9uU3R5bGUgfSBmcm9tICcuLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlsZVVwbG9hZEJ1dHRvbkNvbXBvbmVudCwgRGJ4RmlsZVVwbG9hZEJ1dHRvbkZpbGVzQ2hhbmdlZEV2ZW50IH0gZnJvbSAnLi91cGxvYWQuYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhGaWxlVXBsb2FkQXJlYUNvbXBvbmVudCwgRGJ4RmlsZVVwbG9hZEFyZWFGaWxlc0NoYW5nZWRFdmVudCB9IGZyb20gJy4vdXBsb2FkLmFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWJzdHJhY3REYnhGaWxlVXBsb2FkQ29tcG9uZW50LCBEYnhGaWxlVXBsb2FkRmlsZXNDaGFuZ2VkRXZlbnQgfSBmcm9tICcuL2Fic3RyYWN0LnVwbG9hZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgcHJvdmlkZURieEZpbGVVcGxvYWRBY3Rpb25Db21wYXRhYmxlIH0gZnJvbSAnLi91cGxvYWQuYWN0aW9uJztcblxuZXhwb3J0IHR5cGUgRGJ4RmlsZVVwbG9hZE1vZGUgPSAnYXJlYScgfCAnYnV0dG9uJyB8ICdkZWZhdWx0JztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaWxlVXBsb2FkQ29tcG9uZW50Q29uZmlnIHtcbiAgcmVhZG9ubHkgbW9kZT86IERieEZpbGVVcGxvYWRNb2RlO1xuICByZWFkb25seSBhY2NlcHQ/OiBNYXliZTxGaWxlQXJyYXlBY2NlcHRNYXRjaENvbmZpZ1snYWNjZXB0J10+O1xuICByZWFkb25seSBtdWx0aXBsZT86IE1heWJlPGJvb2xlYW4+O1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYXJlYSB3aWxsIGJlIGNsaWNrYWJsZSB0byBvcGVuIHRoZSBmaWxlIHBpY2tlci5cbiAgICovXG4gIHJlYWRvbmx5IGNsaWNrQXJlYVRvVXBsb2FkPzogTWF5YmU8Ym9vbGVhbj47XG5cbiAgcmVhZG9ubHkgYXJlYT86IE1heWJlPHtcbiAgICByZWFkb25seSBpY29uPzogTWF5YmU8c3RyaW5nPjtcbiAgICByZWFkb25seSB0ZXh0PzogTWF5YmU8c3RyaW5nPjtcbiAgICByZWFkb25seSBoaW50PzogTWF5YmU8c3RyaW5nIHwgYm9vbGVhbj47XG4gIH0+O1xuXG4gIHJlYWRvbmx5IGJ1dHRvbj86IE1heWJlPHtcbiAgICByZWFkb25seSBpY29uPzogTWF5YmU8c3RyaW5nPjtcbiAgICByZWFkb25seSB0ZXh0PzogTWF5YmU8c3RyaW5nPjtcbiAgICByZWFkb25seSBzdHlsZT86IERieEJ1dHRvblN0eWxlO1xuICB9Pjtcbn1cblxuLyoqXG4gKiBDb21iaW5lcyBib3RoIHRoZSBmaWxlIHVwbG9hZCBhcmVhIGFuZCBidXR0b24gaW50byBhIHNpbmdsZSBjb21wb25lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1maWxlLXVwbG9hZCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRieC1maWxlLXVwbG9hZC1hcmVhICNhcmVhIFtzaG93XT1cInNob3dBcmVhU2lnbmFsKClcIiBbaGludF09XCJhcmVhSGludFNpZ25hbCgpXCIgW3RleHRdPVwiYXJlYVRleHRTaWduYWwoKVwiIFtpY29uXT1cImFyZWFJY29uU2lnbmFsKClcIiBbYWNjZXB0XT1cImFjY2VwdFNpZ25hbCgpXCIgW211bHRpcGxlXT1cIm11bHRpcGxlU2lnbmFsKClcIiAoZmlsZXNDaGFuZ2VkKT1cImFyZWFGaWxlc0NoYW5nZWQoJGV2ZW50KVwiIChhcmVhQ2xpY2tlZCk9XCJhcmVhQ2xpY2tlZCgpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkU2lnbmFsKClcIiBbd29ya2luZ109XCJ3b3JraW5nU2lnbmFsKClcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIEBpZiAoc2hvd0J1dHRvblNpZ25hbCgpKSB7XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICB9XG4gICAgPC9kYngtZmlsZS11cGxvYWQtYXJlYT5cbiAgICA8IS0tIEJ1dHRvbiBUZW1wbGF0ZSAtLT5cbiAgICA8bmctdGVtcGxhdGUgI2J1dHRvblRlbXBsYXRlPlxuICAgICAgPGRieC1maWxlLXVwbG9hZC1idXR0b24gI2J1dHRvbiBbdGV4dF09XCJidXR0b25UZXh0U2lnbmFsKClcIiBbaWNvbl09XCJidXR0b25JY29uU2lnbmFsKClcIiBbYWNjZXB0XT1cImFjY2VwdFNpZ25hbCgpXCIgW211bHRpcGxlXT1cIm11bHRpcGxlU2lnbmFsKClcIiAoZmlsZXNDaGFuZ2VkKT1cImJ1dHRvbkZpbGVzQ2hhbmdlZCgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkU2lnbmFsKClcIiBbd29ya2luZ109XCJ3b3JraW5nU2lnbmFsKClcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uU3R5bGUoKVwiPjwvZGJ4LWZpbGUtdXBsb2FkLWJ1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBwcm92aWRlcnM6IHByb3ZpZGVEYnhGaWxlVXBsb2FkQWN0aW9uQ29tcGF0YWJsZShEYnhGaWxlVXBsb2FkQ29tcG9uZW50KSxcbiAgaW1wb3J0czogW0RieEZpbGVVcGxvYWRBcmVhQ29tcG9uZW50LCBEYnhGaWxlVXBsb2FkQnV0dG9uQ29tcG9uZW50LCBOZ1RlbXBsYXRlT3V0bGV0XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlsZVVwbG9hZENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RGJ4RmlsZVVwbG9hZENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0PE1heWJlPERieEZpbGVVcGxvYWRDb21wb25lbnRDb25maWc+PigpO1xuXG4gIHJlYWRvbmx5IGFyZWEgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8c3RyaW5nLCBEYnhGaWxlVXBsb2FkQXJlYUNvbXBvbmVudD4oJ2FyZWEnLCB7IHJlYWQ6IERieEZpbGVVcGxvYWRBcmVhQ29tcG9uZW50IH0pO1xuICByZWFkb25seSBidXR0b24gPSB2aWV3Q2hpbGQucmVxdWlyZWQ8c3RyaW5nLCBEYnhGaWxlVXBsb2FkQnV0dG9uQ29tcG9uZW50PignYnV0dG9uJywgeyByZWFkOiBEYnhGaWxlVXBsb2FkQnV0dG9uQ29tcG9uZW50IH0pO1xuICByZWFkb25seSBidXR0b25TdHlsZSA9IGlucHV0PE1heWJlPERieEJ1dHRvblN0eWxlPj4oKTtcblxuICByZWFkb25seSBtb2RlID0gaW5wdXQ8TWF5YmU8RGJ4RmlsZVVwbG9hZE1vZGU+PigpO1xuICByZWFkb25seSB0ZXh0ID0gaW5wdXQ8TWF5YmU8c3RyaW5nPj4oKTsgLy8gYnV0dG9uIHRleHRcbiAgcmVhZG9ubHkgaWNvbiA9IGlucHV0PE1heWJlPHN0cmluZz4+KCk7IC8vIGJ1dHRvbiBpY29uXG4gIHJlYWRvbmx5IGhpbnQgPSBpbnB1dDxNYXliZTxzdHJpbmcgfCBib29sZWFuPj4oKTsgLy8gYXJlYSBoaW50XG5cbiAgcmVhZG9ubHkgbW9kZVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZygpO1xuICAgIGNvbnN0IG1vZGUgPSB0aGlzLm1vZGUoKTtcbiAgICByZXR1cm4gY29uZmlnPy5tb2RlID8/IG1vZGUgPz8gJ2RlZmF1bHQnO1xuICB9KTtcblxuICByZWFkb25seSBzaG93QnV0dG9uU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1vZGUgPSB0aGlzLm1vZGVTaWduYWwoKTtcbiAgICByZXR1cm4gbW9kZSA9PT0gJ2J1dHRvbicgfHwgbW9kZSA9PT0gJ2RlZmF1bHQnO1xuICB9KTtcblxuICByZWFkb25seSBzaG93QXJlYVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBtb2RlID0gdGhpcy5tb2RlU2lnbmFsKCk7XG4gICAgcmV0dXJuIG1vZGUgPT09ICdhcmVhJyB8fCBtb2RlID09PSAnZGVmYXVsdCc7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGNsaWNrQXJlYVRvVXBsb2FkID0gaW5wdXQ8TWF5YmU8Ym9vbGVhbj4+KCk7XG4gIHJlYWRvbmx5IGNsaWNrQXJlYVRvVXBsb2FkU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnKCk7XG4gICAgY29uc3QgY2xpY2tBcmVhVG9VcGxvYWQgPSB0aGlzLmNsaWNrQXJlYVRvVXBsb2FkKCk7XG4gICAgcmV0dXJuIGNvbmZpZz8uY2xpY2tBcmVhVG9VcGxvYWQgPz8gY2xpY2tBcmVhVG9VcGxvYWQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvblRleHRTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCB0ZXh0ID0gdGhpcy50ZXh0KCk7XG4gICAgcmV0dXJuIGNvbmZpZz8uYnV0dG9uPy50ZXh0ID8/IHRleHQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvbkljb25TaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBpY29uID0gdGhpcy5pY29uKCk7XG4gICAgcmV0dXJuIGNvbmZpZz8uYnV0dG9uPy5pY29uID8/IGljb247XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGFyZWFUZXh0U2lnbmFsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKT8uYXJlYT8udGV4dCk7XG4gIHJlYWRvbmx5IGFyZWFJY29uU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKT8uYXJlYT8uaWNvbik7XG4gIHJlYWRvbmx5IGFyZWFIaW50U2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnKCk7XG4gICAgY29uc3QgaGludCA9IHRoaXMuaGludCgpO1xuICAgIHJldHVybiBjb25maWc/LmFyZWE/LmhpbnQgPz8gaGludDtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdXBsb2FkTXVsdGlwbGVTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBtdWx0aXBsZSA9IHRoaXMubXVsdGlwbGVTaWduYWwoKTtcbiAgICByZXR1cm4gbXVsdGlwbGUgPz8gY29uZmlnPy5tdWx0aXBsZTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdXBsb2FkQWNjZXB0U2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnKCk7XG4gICAgY29uc3QgYWNjZXB0ID0gdGhpcy5hY2NlcHRTaWduYWwoKTtcbiAgICByZXR1cm4gYWNjZXB0ID8/IGNvbmZpZz8uYWNjZXB0O1xuICB9KTtcblxuICByZWFkb25seSBmaWxlc0NoYW5nZWQgPSBvdXRwdXQ8RGJ4RmlsZVVwbG9hZEZpbGVzQ2hhbmdlZEV2ZW50PigpO1xuXG4gIGFyZWFDbGlja2VkKCkge1xuICAgIGNvbnN0IGNsaWNrQXJlYVRvVXBsb2FkID0gdGhpcy5jbGlja0FyZWFUb1VwbG9hZFNpZ25hbCgpO1xuXG4gICAgaWYgKGNsaWNrQXJlYVRvVXBsb2FkKSB7XG4gICAgICBjb25zdCBidXR0b24gPSB0aGlzLmJ1dHRvbigpO1xuICAgICAgYnV0dG9uLm9wZW5JbnB1dCgpO1xuICAgIH1cbiAgfVxuXG4gIGFyZWFGaWxlc0NoYW5nZWQoZXZlbnQ6IERieEZpbGVVcGxvYWRBcmVhRmlsZXNDaGFuZ2VkRXZlbnQpIHtcbiAgICB0aGlzLmZpbGVzQ2hhbmdlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIGJ1dHRvbkZpbGVzQ2hhbmdlZChldmVudDogRGJ4RmlsZVVwbG9hZEJ1dHRvbkZpbGVzQ2hhbmdlZEV2ZW50KSB7XG4gICAgdGhpcy5maWxlc0NoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cbn1cbiJdfQ==
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9pbnRlcmFjdGlvbi91cGxvYWQvdXBsb2FkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl2RyxPQUFPLEVBQUUsNEJBQTRCLEVBQXdDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0csT0FBTyxFQUFFLDBCQUEwQixFQUFzQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSw4QkFBOEIsRUFBa0MsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUEyQnZFOztHQUVHO0FBb0JILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSw4QkFBOEI7SUFDL0QsTUFBTSxHQUFHLEtBQUssRUFBdUMsQ0FBQztJQUV0RCxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBcUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLDBCQUEwQixFQUFFLENBQUMsQ0FBQztJQUM1RyxNQUFNLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBdUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLDRCQUE0QixFQUFFLENBQUMsQ0FBQztJQUNwSCxXQUFXLEdBQUcsS0FBSyxFQUF5QixDQUFDO0lBRTdDLElBQUksR0FBRyxLQUFLLEVBQTRCLENBQUM7SUFDekMsSUFBSSxHQUFHLEtBQUssRUFBaUIsQ0FBQyxDQUFDLGNBQWM7SUFDN0MsSUFBSSxHQUFHLEtBQUssRUFBaUIsQ0FBQyxDQUFDLGNBQWM7SUFD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VUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmlsZUFycmF5QWNjZXB0TWF0Y2hDb25maWcgfSBmcm9tICcuL3VwbG9hZC5hY2NlcHQnO1xuaW1wb3J0IHsgRGJ4QnV0dG9uU3R5bGUgfSBmcm9tICcuLi8uLi9idXR0b24vYnV0dG9uJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBEYnhGaWxlVXBsb2FkQnV0dG9uQ29tcG9uZW50LCBEYnhGaWxlVXBsb2FkQnV0dG9uRmlsZXNDaGFuZ2VkRXZlbnQgfSBmcm9tICcuL3VwbG9hZC5idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IERieEZpbGVVcGxvYWRBcmVhQ29tcG9uZW50LCBEYnhGaWxlVXBsb2FkQXJlYUZpbGVzQ2hhbmdlZEV2ZW50IH0gZnJvbSAnLi91cGxvYWQuYXJlYS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBYnN0cmFjdERieEZpbGVVcGxvYWRDb21wb25lbnQsIERieEZpbGVVcGxvYWRGaWxlc0NoYW5nZWRFdmVudCB9IGZyb20gJy4vYWJzdHJhY3QudXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBwcm92aWRlRGJ4RmlsZVVwbG9hZEFjdGlvbkNvbXBhdGFibGUgfSBmcm9tICcuL3VwbG9hZC5hY3Rpb24nO1xuXG5leHBvcnQgdHlwZSBEYnhGaWxlVXBsb2FkTW9kZSA9ICdhcmVhJyB8ICdidXR0b24nIHwgJ2RlZmF1bHQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpbGVVcGxvYWRDb21wb25lbnRDb25maWcge1xuICByZWFkb25seSBtb2RlPzogRGJ4RmlsZVVwbG9hZE1vZGU7XG4gIHJlYWRvbmx5IGFjY2VwdD86IE1heWJlPEZpbGVBcnJheUFjY2VwdE1hdGNoQ29uZmlnWydhY2NlcHQnXT47XG4gIHJlYWRvbmx5IG11bHRpcGxlPzogTWF5YmU8Ym9vbGVhbj47XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIHRoZSBhcmVhIHdpbGwgYmUgY2xpY2thYmxlIHRvIG9wZW4gdGhlIGZpbGUgcGlja2VyLlxuICAgKi9cbiAgcmVhZG9ubHkgY2xpY2tBcmVhVG9VcGxvYWQ/OiBNYXliZTxib29sZWFuPjtcblxuICByZWFkb25seSBhcmVhPzogTWF5YmU8e1xuICAgIHJlYWRvbmx5IGljb24/OiBNYXliZTxzdHJpbmc+O1xuICAgIHJlYWRvbmx5IHRleHQ/OiBNYXliZTxzdHJpbmc+O1xuICAgIHJlYWRvbmx5IGhpbnQ/OiBNYXliZTxzdHJpbmcgfCBib29sZWFuPjtcbiAgfT47XG5cbiAgcmVhZG9ubHkgYnV0dG9uPzogTWF5YmU8e1xuICAgIHJlYWRvbmx5IGljb24/OiBNYXliZTxzdHJpbmc+O1xuICAgIHJlYWRvbmx5IHRleHQ/OiBNYXliZTxzdHJpbmc+O1xuICAgIHJlYWRvbmx5IHN0eWxlPzogRGJ4QnV0dG9uU3R5bGU7XG4gIH0+O1xufVxuXG4vKipcbiAqIENvbWJpbmVzIGJvdGggdGhlIGZpbGUgdXBsb2FkIGFyZWEgYW5kIGJ1dHRvbiBpbnRvIGEgc2luZ2xlIGNvbXBvbmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LWZpbGUtdXBsb2FkLWFyZWEgI2FyZWEgW3Nob3ddPVwic2hvd0FyZWFTaWduYWwoKVwiIFtoaW50XT1cImFyZWFIaW50U2lnbmFsKClcIiBbdGV4dF09XCJhcmVhVGV4dFNpZ25hbCgpXCIgW2ljb25dPVwiYXJlYUljb25TaWduYWwoKVwiIFthY2NlcHRdPVwiYWNjZXB0U2lnbmFsKClcIiBbbXVsdGlwbGVdPVwibXVsdGlwbGVTaWduYWwoKVwiIChmaWxlc0NoYW5nZWQpPVwiYXJlYUZpbGVzQ2hhbmdlZCgkZXZlbnQpXCIgKGFyZWFDbGlja2VkKT1cImFyZWFDbGlja2VkKClcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRTaWduYWwoKVwiIFt3b3JraW5nXT1cIndvcmtpbmdTaWduYWwoKVwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgQGlmIChzaG93QnV0dG9uU2lnbmFsKCkpIHtcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvblRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIH1cbiAgICA8L2RieC1maWxlLXVwbG9hZC1hcmVhPlxuICAgIDwhLS0gQnV0dG9uIFRlbXBsYXRlIC0tPlxuICAgIDxuZy10ZW1wbGF0ZSAjYnV0dG9uVGVtcGxhdGU+XG4gICAgICA8ZGJ4LWZpbGUtdXBsb2FkLWJ1dHRvbiAjYnV0dG9uIFt0ZXh0XT1cImJ1dHRvblRleHRTaWduYWwoKVwiIFtpY29uXT1cImJ1dHRvbkljb25TaWduYWwoKVwiIFthY2NlcHRdPVwiYWNjZXB0U2lnbmFsKClcIiBbbXVsdGlwbGVdPVwibXVsdGlwbGVTaWduYWwoKVwiIChmaWxlc0NoYW5nZWQpPVwiYnV0dG9uRmlsZXNDaGFuZ2VkKCRldmVudClcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRTaWduYWwoKVwiIFt3b3JraW5nXT1cIndvcmtpbmdTaWduYWwoKVwiIFtidXR0b25TdHlsZV09XCJidXR0b25TdHlsZSgpXCI+PC9kYngtZmlsZS11cGxvYWQtYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIHByb3ZpZGVyczogcHJvdmlkZURieEZpbGVVcGxvYWRBY3Rpb25Db21wYXRhYmxlKERieEZpbGVVcGxvYWRDb21wb25lbnQpLFxuICBpbXBvcnRzOiBbRGJ4RmlsZVVwbG9hZEFyZWFDb21wb25lbnQsIERieEZpbGVVcGxvYWRCdXR0b25Db21wb25lbnQsIE5nVGVtcGxhdGVPdXRsZXRdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGaWxlVXBsb2FkQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhGaWxlVXBsb2FkQ29tcG9uZW50IHtcbiAgcmVhZG9ubHkgY29uZmlnID0gaW5wdXQ8TWF5YmU8RGJ4RmlsZVVwbG9hZENvbXBvbmVudENvbmZpZz4+KCk7XG5cbiAgcmVhZG9ubHkgYXJlYSA9IHZpZXdDaGlsZC5yZXF1aXJlZDxzdHJpbmcsIERieEZpbGVVcGxvYWRBcmVhQ29tcG9uZW50PignYXJlYScsIHsgcmVhZDogRGJ4RmlsZVVwbG9hZEFyZWFDb21wb25lbnQgfSk7XG4gIHJlYWRvbmx5IGJ1dHRvbiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxzdHJpbmcsIERieEZpbGVVcGxvYWRCdXR0b25Db21wb25lbnQ+KCdidXR0b24nLCB7IHJlYWQ6IERieEZpbGVVcGxvYWRCdXR0b25Db21wb25lbnQgfSk7XG4gIHJlYWRvbmx5IGJ1dHRvblN0eWxlID0gaW5wdXQ8TWF5YmU8RGJ4QnV0dG9uU3R5bGU+PigpO1xuXG4gIHJlYWRvbmx5IG1vZGUgPSBpbnB1dDxNYXliZTxEYnhGaWxlVXBsb2FkTW9kZT4+KCk7XG4gIHJlYWRvbmx5IHRleHQgPSBpbnB1dDxNYXliZTxzdHJpbmc+PigpOyAvLyBidXR0b24gdGV4dFxuICByZWFkb25seSBpY29uID0gaW5wdXQ8TWF5YmU8c3RyaW5nPj4oKTsgLy8gYnV0dG9uIGljb25cbiAgcmVhZG9ubHkgaGludCA9IGlucHV0PE1heWJlPHN0cmluZyB8IGJvb2xlYW4+PigpOyAvLyBhcmVhIGhpbnRcblxuICByZWFkb25seSBtb2RlU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnKCk7XG4gICAgY29uc3QgbW9kZSA9IHRoaXMubW9kZSgpO1xuICAgIHJldHVybiBjb25maWc/Lm1vZGUgPz8gbW9kZSA/PyAnZGVmYXVsdCc7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHNob3dCdXR0b25TaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgbW9kZSA9IHRoaXMubW9kZVNpZ25hbCgpO1xuICAgIHJldHVybiBtb2RlID09PSAnYnV0dG9uJyB8fCBtb2RlID09PSAnZGVmYXVsdCc7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHNob3dBcmVhU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1vZGUgPSB0aGlzLm1vZGVTaWduYWwoKTtcbiAgICByZXR1cm4gbW9kZSA9PT0gJ2FyZWEnIHx8IG1vZGUgPT09ICdkZWZhdWx0JztcbiAgfSk7XG5cbiAgcmVhZG9ubHkgY2xpY2tBcmVhVG9VcGxvYWQgPSBpbnB1dDxNYXliZTxib29sZWFuPj4oKTtcbiAgcmVhZG9ubHkgY2xpY2tBcmVhVG9VcGxvYWRTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBjbGlja0FyZWFUb1VwbG9hZCA9IHRoaXMuY2xpY2tBcmVhVG9VcGxvYWQoKTtcbiAgICByZXR1cm4gY29uZmlnPy5jbGlja0FyZWFUb1VwbG9hZCA/PyBjbGlja0FyZWFUb1VwbG9hZDtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgYnV0dG9uVGV4dFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZygpO1xuICAgIGNvbnN0IHRleHQgPSB0aGlzLnRleHQoKTtcbiAgICByZXR1cm4gY29uZmlnPy5idXR0b24/LnRleHQgPz8gdGV4dDtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgYnV0dG9uSWNvblNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZygpO1xuICAgIGNvbnN0IGljb24gPSB0aGlzLmljb24oKTtcbiAgICByZXR1cm4gY29uZmlnPy5idXR0b24/Lmljb24gPz8gaWNvbjtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgYXJlYVRleHRTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpPy5hcmVhPy50ZXh0KTtcbiAgcmVhZG9ubHkgYXJlYUljb25TaWduYWwgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpPy5hcmVhPy5pY29uKTtcbiAgcmVhZG9ubHkgYXJlYUhpbnRTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBoaW50ID0gdGhpcy5oaW50KCk7XG4gICAgcmV0dXJuIGNvbmZpZz8uYXJlYT8uaGludCA/PyBoaW50O1xuICB9KTtcblxuICByZWFkb25seSB1cGxvYWRNdWx0aXBsZVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZygpO1xuICAgIGNvbnN0IG11bHRpcGxlID0gdGhpcy5tdWx0aXBsZVNpZ25hbCgpO1xuICAgIHJldHVybiBtdWx0aXBsZSA/PyBjb25maWc/Lm11bHRpcGxlO1xuICB9KTtcblxuICByZWFkb25seSB1cGxvYWRBY2NlcHRTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBhY2NlcHQgPSB0aGlzLmFjY2VwdFNpZ25hbCgpO1xuICAgIHJldHVybiBhY2NlcHQgPz8gY29uZmlnPy5hY2NlcHQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGZpbGVzQ2hhbmdlZCA9IG91dHB1dDxEYnhGaWxlVXBsb2FkRmlsZXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgYXJlYUNsaWNrZWQoKSB7XG4gICAgY29uc3QgY2xpY2tBcmVhVG9VcGxvYWQgPSB0aGlzLmNsaWNrQXJlYVRvVXBsb2FkU2lnbmFsKCk7XG5cbiAgICBpZiAoY2xpY2tBcmVhVG9VcGxvYWQpIHtcbiAgICAgIGNvbnN0IGJ1dHRvbiA9IHRoaXMuYnV0dG9uKCk7XG4gICAgICBidXR0b24ub3BlbklucHV0KCk7XG4gICAgfVxuICB9XG5cbiAgYXJlYUZpbGVzQ2hhbmdlZChldmVudDogRGJ4RmlsZVVwbG9hZEFyZWFGaWxlc0NoYW5nZWRFdmVudCkge1xuICAgIHRoaXMuZmlsZXNDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgYnV0dG9uRmlsZXNDaGFuZ2VkKGV2ZW50OiBEYnhGaWxlVXBsb2FkQnV0dG9uRmlsZXNDaGFuZ2VkRXZlbnQpIHtcbiAgICB0aGlzLmZpbGVzQ2hhbmdlZC5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIl19
|
|
@@ -1703,20 +1703,20 @@ class DbxProgressSpinnerButtonComponent extends AbstractProgressButtonDirective
|
|
|
1703
1703
|
return size;
|
|
1704
1704
|
});
|
|
1705
1705
|
buttonCssSignal = toSignal(this.buttonCss$);
|
|
1706
|
-
|
|
1706
|
+
showTextContentSignal = computed(() => {
|
|
1707
1707
|
const config = this.configSignal();
|
|
1708
1708
|
return !(config?.fab || config?.iconOnly);
|
|
1709
1709
|
});
|
|
1710
1710
|
showTextButtonIconSignal = computed(() => {
|
|
1711
1711
|
const config = this.configSignal();
|
|
1712
|
-
const showText = this.
|
|
1712
|
+
const showText = this.showTextContentSignal();
|
|
1713
1713
|
return showText && config?.buttonIcon; // shows the button icon with showing the text.
|
|
1714
1714
|
});
|
|
1715
1715
|
showIconSignal = computed(() => {
|
|
1716
1716
|
const config = this.configSignal();
|
|
1717
1717
|
return (config &&
|
|
1718
1718
|
config.buttonIcon && // button icon must be defined
|
|
1719
|
-
!this.
|
|
1719
|
+
!this.showTextContentSignal()); // show icon if either fab or iconOnly is true
|
|
1720
1720
|
});
|
|
1721
1721
|
customSpinnerStyleSignal = computed(() => {
|
|
1722
1722
|
const customSpinnerColor = this.configSignal()?.customSpinnerColor;
|
|
@@ -1727,11 +1727,11 @@ class DbxProgressSpinnerButtonComponent extends AbstractProgressButtonDirective
|
|
|
1727
1727
|
return hasCustomStyle ? { 'dbx-progress-spinner-custom': true } : undefined;
|
|
1728
1728
|
});
|
|
1729
1729
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxProgressSpinnerButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1730
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxProgressSpinnerButtonComponent, isStandalone: true, selector: "dbx-progress-spinner-button,dbx-spinner-button", viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["button"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<button class=\"dbx-base-button dbx-progress-spinner-button\" #button mat-button [type]=\"buttonTypeAttributeSignal()\" [color]=\"configSignal()?.buttonColor\" [ngClass]=\"buttonCssSignal()\" [ngStyle]=\"configSignal()?.customStyle\" [disabled]=\"buttonDisabledSignal()\">\n @if (
|
|
1730
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxProgressSpinnerButtonComponent, isStandalone: true, selector: "dbx-progress-spinner-button,dbx-spinner-button", viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["button"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<button class=\"dbx-base-button dbx-progress-spinner-button\" #button mat-button [type]=\"buttonTypeAttributeSignal()\" [color]=\"configSignal()?.buttonColor\" [ngClass]=\"buttonCssSignal()\" [ngStyle]=\"configSignal()?.customStyle\" [disabled]=\"buttonDisabledSignal()\">\n @if (showTextContentSignal()) {\n @if (showTextButtonIconSignal()) {\n <mat-icon class=\"mat-button-icon\" [class.is-mat-icon]=\"!configSignal()?.buttonIcon?.fontSet\" [class.working]=\"showProgressSignal()\" [ngClass]=\"configSignal()?.buttonIcon?.customClass\" [fontSet]=\"configSignal()?.buttonIcon?.fontSet!\" [fontIcon]=\"configSignal()?.buttonIcon?.fontIcon!\" [color]=\"configSignal()?.buttonIcon?.color!\" [svgIcon]=\"configSignal()?.buttonIcon?.svgIcon!\">\n {{ configSignal()?.buttonIcon?.fontSet ? '' : configSignal()?.buttonIcon?.fontIcon }}\n </mat-icon>\n }\n <span class=\"button-text\" [class.working]=\"showProgressSignal()\">\n <!-- TODO: Check ng-content has content, and if there is no ng-content input or text, then showTextContentSignal() should be false. -->\n {{ configSignal()?.text }}\n <ng-content></ng-content>\n </span>\n }\n @if (showIconSignal()) {\n <!-- Use ng-container to prevent mat-icon from being a child of the button which changes the behavior -->\n <ng-container>\n <mat-icon class=\"mat-fab-icon\" [fontSet]=\"configSignal()?.buttonIcon?.fontSet!\" [fontIcon]=\"configSignal()?.buttonIcon?.fontIcon!\" [color]=\"configSignal()?.buttonIcon?.color!\" [svgIcon]=\"configSignal()?.buttonIcon?.svgIcon!\" [inline]=\"configSignal()?.fab && configSignal()?.buttonIcon?.inline!\">\n {{ configSignal()?.buttonIcon?.fontSet! ? '' : configSignal()?.buttonIcon?.fontIcon! }}\n </mat-icon>\n </ng-container>\n }\n @if (showProgressSignal()) {\n <mat-spinner class=\"spinner\" [diameter]=\"spinnerSizeSignal()\" [color]=\"configSignal()?.spinnerColor!\" [mode]=\"modeSignal()\" [value]=\"workingValueSignal()\" [ngStyle]=\"customSpinnerStyleSignal()\" [ngClass]=\"customSpinnerStyleClassSignal()\" [class.working]=\"showProgressSignal()\"></mat-spinner>\n }\n</button>\n", styles: [":host button{min-height:36px;height:unset;outline:none}:host button.working{cursor:not-allowed}:host button ::ng-deep .mdc-button__label{display:flex;align-items:center;justify-content:center}:host button.mat-mdc-button.mat-mdc-icon-button{min-width:unset;--mdc-icon-button-icon-size: unset;--mat-text-button-with-icon-horizontal-padding: 0px;--mdc-icon-button-state-layer-size: 36px;border-radius:50%}:host button.mat-mdc-button.mat-mdc-icon-button .mat-mdc-progress-spinner{--mdc-icon-button-icon-size: 36px}:host button.mat-mdc-button.mat-mdc-icon-button.dbx-progress-spinner-fab{height:48px;--mdc-icon-button-state-layer-size: 48px}:host button.mat-mdc-button.mat-mdc-icon-button.dbx-progress-spinner-fab .mat-mdc-progress-spinner{--mdc-icon-button-icon-size: 48px}:host button.fullWidth{width:100%}:host button .mat-mdc-progress-spinner{position:absolute;opacity:0;transition:opacity .3s ease-in-out}:host button .mat-mdc-progress-spinner.working{opacity:1}:host button .dbx-progress-spinner-custom.mat-progress-spinner.mat-accent circle,:host button .dbx-progress-spinner-custom.mat-mdc-progress-spinner.mat-accent circle{stroke:unset!important}:host button .button-text{opacity:1;transition:opacity .3s ease-in-out}:host button .button-text.working{opacity:0}:host button mat-icon.mat-button-icon{padding-right:5px;transition:opacity .3s ease-in-out;font-size:1.125rem;height:1.125rem;width:1.125rem;margin-right:var(--mat-protected-button-icon-spacing, 8px)}:host button mat-icon.mat-button-icon.is-mat-icon{position:relative;left:3px}:host button mat-icon.mat-button-icon.working{opacity:0}\n", ":host button.mat-mdc-button .button-text{display:flex;align-items:center}:host button.mat-mdc-button mat-icon.mat-button-icon.mat-icon.mat-ligature-font[fontIcon]:before,:host button.mat-mdc-button mat-icon.mat-fab-icon.mat-icon.mat-ligature-font[fontIcon]:before{content:unset}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1731
1731
|
}
|
|
1732
1732
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxProgressSpinnerButtonComponent, decorators: [{
|
|
1733
1733
|
type: Component,
|
|
1734
|
-
args: [{ selector: 'dbx-progress-spinner-button,dbx-spinner-button', imports: [MatButtonModule, MatIconModule, MatProgressSpinner, NgClass, NgStyle], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<button class=\"dbx-base-button dbx-progress-spinner-button\" #button mat-button [type]=\"buttonTypeAttributeSignal()\" [color]=\"configSignal()?.buttonColor\" [ngClass]=\"buttonCssSignal()\" [ngStyle]=\"configSignal()?.customStyle\" [disabled]=\"buttonDisabledSignal()\">\n @if (
|
|
1734
|
+
args: [{ selector: 'dbx-progress-spinner-button,dbx-spinner-button', imports: [MatButtonModule, MatIconModule, MatProgressSpinner, NgClass, NgStyle], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<button class=\"dbx-base-button dbx-progress-spinner-button\" #button mat-button [type]=\"buttonTypeAttributeSignal()\" [color]=\"configSignal()?.buttonColor\" [ngClass]=\"buttonCssSignal()\" [ngStyle]=\"configSignal()?.customStyle\" [disabled]=\"buttonDisabledSignal()\">\n @if (showTextContentSignal()) {\n @if (showTextButtonIconSignal()) {\n <mat-icon class=\"mat-button-icon\" [class.is-mat-icon]=\"!configSignal()?.buttonIcon?.fontSet\" [class.working]=\"showProgressSignal()\" [ngClass]=\"configSignal()?.buttonIcon?.customClass\" [fontSet]=\"configSignal()?.buttonIcon?.fontSet!\" [fontIcon]=\"configSignal()?.buttonIcon?.fontIcon!\" [color]=\"configSignal()?.buttonIcon?.color!\" [svgIcon]=\"configSignal()?.buttonIcon?.svgIcon!\">\n {{ configSignal()?.buttonIcon?.fontSet ? '' : configSignal()?.buttonIcon?.fontIcon }}\n </mat-icon>\n }\n <span class=\"button-text\" [class.working]=\"showProgressSignal()\">\n <!-- TODO: Check ng-content has content, and if there is no ng-content input or text, then showTextContentSignal() should be false. -->\n {{ configSignal()?.text }}\n <ng-content></ng-content>\n </span>\n }\n @if (showIconSignal()) {\n <!-- Use ng-container to prevent mat-icon from being a child of the button which changes the behavior -->\n <ng-container>\n <mat-icon class=\"mat-fab-icon\" [fontSet]=\"configSignal()?.buttonIcon?.fontSet!\" [fontIcon]=\"configSignal()?.buttonIcon?.fontIcon!\" [color]=\"configSignal()?.buttonIcon?.color!\" [svgIcon]=\"configSignal()?.buttonIcon?.svgIcon!\" [inline]=\"configSignal()?.fab && configSignal()?.buttonIcon?.inline!\">\n {{ configSignal()?.buttonIcon?.fontSet! ? '' : configSignal()?.buttonIcon?.fontIcon! }}\n </mat-icon>\n </ng-container>\n }\n @if (showProgressSignal()) {\n <mat-spinner class=\"spinner\" [diameter]=\"spinnerSizeSignal()\" [color]=\"configSignal()?.spinnerColor!\" [mode]=\"modeSignal()\" [value]=\"workingValueSignal()\" [ngStyle]=\"customSpinnerStyleSignal()\" [ngClass]=\"customSpinnerStyleClassSignal()\" [class.working]=\"showProgressSignal()\"></mat-spinner>\n }\n</button>\n", styles: [":host button{min-height:36px;height:unset;outline:none}:host button.working{cursor:not-allowed}:host button ::ng-deep .mdc-button__label{display:flex;align-items:center;justify-content:center}:host button.mat-mdc-button.mat-mdc-icon-button{min-width:unset;--mdc-icon-button-icon-size: unset;--mat-text-button-with-icon-horizontal-padding: 0px;--mdc-icon-button-state-layer-size: 36px;border-radius:50%}:host button.mat-mdc-button.mat-mdc-icon-button .mat-mdc-progress-spinner{--mdc-icon-button-icon-size: 36px}:host button.mat-mdc-button.mat-mdc-icon-button.dbx-progress-spinner-fab{height:48px;--mdc-icon-button-state-layer-size: 48px}:host button.mat-mdc-button.mat-mdc-icon-button.dbx-progress-spinner-fab .mat-mdc-progress-spinner{--mdc-icon-button-icon-size: 48px}:host button.fullWidth{width:100%}:host button .mat-mdc-progress-spinner{position:absolute;opacity:0;transition:opacity .3s ease-in-out}:host button .mat-mdc-progress-spinner.working{opacity:1}:host button .dbx-progress-spinner-custom.mat-progress-spinner.mat-accent circle,:host button .dbx-progress-spinner-custom.mat-mdc-progress-spinner.mat-accent circle{stroke:unset!important}:host button .button-text{opacity:1;transition:opacity .3s ease-in-out}:host button .button-text.working{opacity:0}:host button mat-icon.mat-button-icon{padding-right:5px;transition:opacity .3s ease-in-out;font-size:1.125rem;height:1.125rem;width:1.125rem;margin-right:var(--mat-protected-button-icon-spacing, 8px)}:host button mat-icon.mat-button-icon.is-mat-icon{position:relative;left:3px}:host button mat-icon.mat-button-icon.working{opacity:0}\n", ":host button.mat-mdc-button .button-text{display:flex;align-items:center}:host button.mat-mdc-button mat-icon.mat-button-icon.mat-icon.mat-ligature-font[fontIcon]:before,:host button.mat-mdc-button mat-icon.mat-fab-icon.mat-icon.mat-ligature-font[fontIcon]:before{content:unset}\n"] }]
|
|
1735
1735
|
}] });
|
|
1736
1736
|
|
|
1737
1737
|
const importsAndExports$s = [DbxProgressSpinnerButtonComponent, DbxProgressBarButtonComponent];
|
|
@@ -6200,16 +6200,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
6200
6200
|
type: Directive
|
|
6201
6201
|
}] });
|
|
6202
6202
|
|
|
6203
|
+
/**
|
|
6204
|
+
* Component used to wrap content in a pit with a label.
|
|
6205
|
+
*/
|
|
6206
|
+
class DbxContentPitDirective {
|
|
6207
|
+
scrollable = input();
|
|
6208
|
+
rounded = input(false);
|
|
6209
|
+
scrollableHeightSignal = computed(() => {
|
|
6210
|
+
let scrollable = this.scrollable();
|
|
6211
|
+
let scrollableHeight;
|
|
6212
|
+
if (typeof scrollable === 'boolean') {
|
|
6213
|
+
scrollable = scrollable ? 'medium' : undefined; // defaults to medium
|
|
6214
|
+
}
|
|
6215
|
+
if (scrollable) {
|
|
6216
|
+
if (typeof scrollable === 'string') {
|
|
6217
|
+
switch (scrollable) {
|
|
6218
|
+
case 'small':
|
|
6219
|
+
scrollable = 120;
|
|
6220
|
+
break;
|
|
6221
|
+
case 'medium':
|
|
6222
|
+
scrollable = 320;
|
|
6223
|
+
break;
|
|
6224
|
+
case 'large':
|
|
6225
|
+
scrollable = 460;
|
|
6226
|
+
break;
|
|
6227
|
+
default:
|
|
6228
|
+
scrollableHeight = scrollable; // use as-is
|
|
6229
|
+
break;
|
|
6230
|
+
}
|
|
6231
|
+
}
|
|
6232
|
+
if (typeof scrollable === 'number') {
|
|
6233
|
+
scrollableHeight = `${scrollable}px`;
|
|
6234
|
+
}
|
|
6235
|
+
}
|
|
6236
|
+
return scrollableHeight ?? null;
|
|
6237
|
+
});
|
|
6238
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxContentPitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6239
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxContentPitDirective, isStandalone: true, selector: "dbx-content-pit, [dbxContentPit]", inputs: { scrollable: { classPropertyName: "scrollable", publicName: "scrollable", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.dbx-content-pit-scrollable": "scrollableHeightSignal() != null", "class.dbx-content-pit-rounded": "rounded()", "style.max-height": "scrollableHeightSignal()" }, classAttribute: "d-block dbx-content-pit" }, ngImport: i0 });
|
|
6240
|
+
}
|
|
6241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxContentPitDirective, decorators: [{
|
|
6242
|
+
type: Directive,
|
|
6243
|
+
args: [{
|
|
6244
|
+
selector: 'dbx-content-pit, [dbxContentPit]',
|
|
6245
|
+
host: {
|
|
6246
|
+
class: 'd-block dbx-content-pit',
|
|
6247
|
+
'[class.dbx-content-pit-scrollable]': 'scrollableHeightSignal() != null',
|
|
6248
|
+
'[class.dbx-content-pit-rounded]': 'rounded()',
|
|
6249
|
+
'[style.max-height]': 'scrollableHeightSignal()'
|
|
6250
|
+
},
|
|
6251
|
+
standalone: true
|
|
6252
|
+
}]
|
|
6253
|
+
}] });
|
|
6254
|
+
|
|
6203
6255
|
/**
|
|
6204
6256
|
* View for previewing and downloading arbitrary text content.
|
|
6205
6257
|
*/
|
|
6206
6258
|
class DbxDownloadTextViewComponent extends AbstractDbxClipboardDirective {
|
|
6207
6259
|
_browserObjectUrl = browserObjectUrlRef();
|
|
6208
6260
|
downloadButton = viewChild('downloadButton', { read: ElementRef });
|
|
6261
|
+
showDownloadButton = input(true);
|
|
6209
6262
|
loadingText = input(undefined);
|
|
6210
6263
|
linear = input(undefined);
|
|
6211
6264
|
showTitle = input(true);
|
|
6212
6265
|
showPreview = input(true);
|
|
6266
|
+
showExpandPreviewButton = input(true);
|
|
6267
|
+
expandPreview = model(false);
|
|
6213
6268
|
content = input(undefined);
|
|
6214
6269
|
contentState = input(undefined);
|
|
6215
6270
|
contentState$ = toObservable(this.contentState).pipe(maybeValueFromObservableOrValue(), shareReplay(1));
|
|
@@ -6264,12 +6319,15 @@ class DbxDownloadTextViewComponent extends AbstractDbxClipboardDirective {
|
|
|
6264
6319
|
ngOnDestroy() {
|
|
6265
6320
|
this._browserObjectUrl.destroy();
|
|
6266
6321
|
}
|
|
6322
|
+
toggleExpandPreview() {
|
|
6323
|
+
this.expandPreview.update((value) => !value);
|
|
6324
|
+
}
|
|
6267
6325
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxDownloadTextViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
6268
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxDownloadTextViewComponent, isStandalone: true, selector: "dbx-download-text-view", inputs: { loadingText: { classPropertyName: "loadingText", publicName: "loadingText", isSignal: true, isRequired: false, transformFunction: null }, linear: { classPropertyName: "linear", publicName: "linear", isSignal: true, isRequired: false, transformFunction: null }, showTitle: { classPropertyName: "showTitle", publicName: "showTitle", isSignal: true, isRequired: false, transformFunction: null }, showPreview: { classPropertyName: "showPreview", publicName: "showPreview", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, contentState: { classPropertyName: "contentState", publicName: "contentState", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "downloadButton", first: true, predicate: ["downloadButton"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear()\" [text]=\"loadingText()\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n @if (showTitle()) {\n <div class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileNameSignal() }}</div>\n }\n @if (showPreview()) {\n <
|
|
6326
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxDownloadTextViewComponent, isStandalone: true, selector: "dbx-download-text-view", inputs: { showDownloadButton: { classPropertyName: "showDownloadButton", publicName: "showDownloadButton", isSignal: true, isRequired: false, transformFunction: null }, loadingText: { classPropertyName: "loadingText", publicName: "loadingText", isSignal: true, isRequired: false, transformFunction: null }, linear: { classPropertyName: "linear", publicName: "linear", isSignal: true, isRequired: false, transformFunction: null }, showTitle: { classPropertyName: "showTitle", publicName: "showTitle", isSignal: true, isRequired: false, transformFunction: null }, showPreview: { classPropertyName: "showPreview", publicName: "showPreview", isSignal: true, isRequired: false, transformFunction: null }, showExpandPreviewButton: { classPropertyName: "showExpandPreviewButton", publicName: "showExpandPreviewButton", isSignal: true, isRequired: false, transformFunction: null }, expandPreview: { classPropertyName: "expandPreview", publicName: "expandPreview", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, contentState: { classPropertyName: "contentState", publicName: "contentState", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expandPreview: "expandPreviewChange" }, viewQueries: [{ propertyName: "downloadButton", first: true, predicate: ["downloadButton"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear()\" [text]=\"loadingText()\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n @if (showTitle()) {\n <div class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileNameSignal() }}</div>\n }\n @if (showPreview()) {\n <dbx-content-pit [scrollable]=\"!expandPreview()\" class=\"dbx-download-text-preview dbx-json dbx-mb3\">\n @if (showExpandPreviewButton()) {\n <dbx-button class=\"dbx-content-pit-floating-button\" [raised]=\"true\" [icon]=\"expandPreview() ? 'unfold_less' : 'unfold_more'\" (buttonClick)=\"toggleExpandPreview()\"></dbx-button>\n }\n {{ contentDataSignal() }}\n </dbx-content-pit>\n }\n <div class=\"dbx-download-text-view-actions\">\n <dbx-button dbxAction dbxActionValue [raised]=\"true\" [dbxActionHandler]=\"handleCopyToClipboard\" icon=\"content_copy\" dbxActionButton text=\"Copy To Clipboard\"></dbx-button>\n @if (showDownloadButton()) {\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-download-blob-button [config]=\"downloadConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DbxLoadingComponent, selector: "dbx-loading", inputs: ["padding", "show", "text", "mode", "color", "diameter", "linear", "loading", "error", "context"] }, { kind: "ngmodule", type: DbxActionModule }, { kind: "directive", type: i1$2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i1$2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i1$2.DbxActionValueDirective, selector: "dbxActionValue,[dbxActionValue]", inputs: ["dbxActionValue"] }, { kind: "directive", type: i1$2.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["bar", "type", "buttonStyle", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "raised", "stroked", "flat", "iconOnly", "fab", "mode"] }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: DbxDownloadBlobButtonComponent, selector: "dbx-download-blob-button", inputs: ["config"] }, { kind: "directive", type: DbxContentPitDirective, selector: "dbx-content-pit, [dbxContentPit]", inputs: ["scrollable", "rounded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6269
6327
|
}
|
|
6270
6328
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxDownloadTextViewComponent, decorators: [{
|
|
6271
6329
|
type: Component,
|
|
6272
|
-
args: [{ selector: 'dbx-download-text-view', standalone: true, imports: [NgTemplateOutlet, DbxLoadingComponent, DbxActionModule, DbxActionButtonDirective, DbxButtonComponent, DbxButtonSpacerDirective, DbxDownloadBlobButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear()\" [text]=\"loadingText()\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n @if (showTitle()) {\n <div class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileNameSignal() }}</div>\n }\n @if (showPreview()) {\n <
|
|
6330
|
+
args: [{ selector: 'dbx-download-text-view', standalone: true, imports: [NgTemplateOutlet, DbxLoadingComponent, DbxActionModule, DbxActionButtonDirective, DbxButtonComponent, DbxButtonSpacerDirective, DbxDownloadBlobButtonComponent, DbxContentPitDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear()\" [text]=\"loadingText()\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n @if (showTitle()) {\n <div class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileNameSignal() }}</div>\n }\n @if (showPreview()) {\n <dbx-content-pit [scrollable]=\"!expandPreview()\" class=\"dbx-download-text-preview dbx-json dbx-mb3\">\n @if (showExpandPreviewButton()) {\n <dbx-button class=\"dbx-content-pit-floating-button\" [raised]=\"true\" [icon]=\"expandPreview() ? 'unfold_less' : 'unfold_more'\" (buttonClick)=\"toggleExpandPreview()\"></dbx-button>\n }\n {{ contentDataSignal() }}\n </dbx-content-pit>\n }\n <div class=\"dbx-download-text-view-actions\">\n <dbx-button dbxAction dbxActionValue [raised]=\"true\" [dbxActionHandler]=\"handleCopyToClipboard\" icon=\"content_copy\" dbxActionButton text=\"Copy To Clipboard\"></dbx-button>\n @if (showDownloadButton()) {\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-download-blob-button [config]=\"downloadConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n </div>\n</ng-template>\n" }]
|
|
6273
6331
|
}] });
|
|
6274
6332
|
|
|
6275
6333
|
const importsAndExports$h = [DbxDownloadTextViewComponent];
|
|
@@ -8508,58 +8566,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
8508
8566
|
}]
|
|
8509
8567
|
}] });
|
|
8510
8568
|
|
|
8511
|
-
/**
|
|
8512
|
-
* Component used to wrap content in a pit with a label.
|
|
8513
|
-
*/
|
|
8514
|
-
class DbxContentPitDirective {
|
|
8515
|
-
scrollable = input();
|
|
8516
|
-
rounded = input(false);
|
|
8517
|
-
scrollableHeightSignal = computed(() => {
|
|
8518
|
-
let scrollable = this.scrollable();
|
|
8519
|
-
let scrollableHeight;
|
|
8520
|
-
if (typeof scrollable === 'boolean') {
|
|
8521
|
-
scrollable = scrollable ? 'medium' : undefined; // defaults to medium
|
|
8522
|
-
}
|
|
8523
|
-
if (scrollable) {
|
|
8524
|
-
if (typeof scrollable === 'string') {
|
|
8525
|
-
switch (scrollable) {
|
|
8526
|
-
case 'small':
|
|
8527
|
-
scrollable = 120;
|
|
8528
|
-
break;
|
|
8529
|
-
case 'medium':
|
|
8530
|
-
scrollable = 320;
|
|
8531
|
-
break;
|
|
8532
|
-
case 'large':
|
|
8533
|
-
scrollable = 460;
|
|
8534
|
-
break;
|
|
8535
|
-
default:
|
|
8536
|
-
scrollableHeight = scrollable; // use as-is
|
|
8537
|
-
break;
|
|
8538
|
-
}
|
|
8539
|
-
}
|
|
8540
|
-
if (typeof scrollable === 'number') {
|
|
8541
|
-
scrollableHeight = `${scrollable}px`;
|
|
8542
|
-
}
|
|
8543
|
-
}
|
|
8544
|
-
return scrollableHeight ?? null;
|
|
8545
|
-
});
|
|
8546
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxContentPitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
8547
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxContentPitDirective, isStandalone: true, selector: "dbx-content-pit, [dbxContentPit]", inputs: { scrollable: { classPropertyName: "scrollable", publicName: "scrollable", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.dbx-content-pit-scrollable": "scrollableHeightSignal() != null", "class.dbx-content-pit-rounded": "rounded()", "style.max-height": "scrollableHeightSignal()" }, classAttribute: "d-block dbx-content-pit" }, ngImport: i0 });
|
|
8548
|
-
}
|
|
8549
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxContentPitDirective, decorators: [{
|
|
8550
|
-
type: Directive,
|
|
8551
|
-
args: [{
|
|
8552
|
-
selector: 'dbx-content-pit, [dbxContentPit]',
|
|
8553
|
-
host: {
|
|
8554
|
-
class: 'd-block dbx-content-pit',
|
|
8555
|
-
'[class.dbx-content-pit-scrollable]': 'scrollableHeightSignal() != null',
|
|
8556
|
-
'[class.dbx-content-pit-rounded]': 'rounded()',
|
|
8557
|
-
'[style.max-height]': 'scrollableHeightSignal()'
|
|
8558
|
-
},
|
|
8559
|
-
standalone: true
|
|
8560
|
-
}]
|
|
8561
|
-
}] });
|
|
8562
|
-
|
|
8563
8569
|
const importsAndExports$b = [
|
|
8564
8570
|
//
|
|
8565
8571
|
DbxContentDirective,
|
|
@@ -11946,6 +11952,11 @@ class DbxHelpViewPopoverButtonComponent extends AbstractPopoverRefDirective {
|
|
|
11946
11952
|
_dbxPopoverService = inject(DbxPopoverService);
|
|
11947
11953
|
buttonElement = viewChild.required('button', { read: ElementRef });
|
|
11948
11954
|
config = input();
|
|
11955
|
+
buttonDisplaySignal = computed(() => {
|
|
11956
|
+
const config = this.config();
|
|
11957
|
+
return config?.buttonDisplay ?? { icon: config?.icon ?? 'help_center' };
|
|
11958
|
+
});
|
|
11959
|
+
buttonStyleSignal = computed(() => this.config()?.buttonStyle);
|
|
11949
11960
|
_makePopoverRef(origin) {
|
|
11950
11961
|
if (!origin) {
|
|
11951
11962
|
throw new Error('Missing origin.');
|
|
@@ -11962,18 +11973,18 @@ class DbxHelpViewPopoverButtonComponent extends AbstractPopoverRefDirective {
|
|
|
11962
11973
|
}
|
|
11963
11974
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxHelpViewPopoverButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
11964
11975
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxHelpViewPopoverButtonComponent, isStandalone: true, selector: "dbx-help-view-popover-button", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["button"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
|
|
11965
|
-
<dbx-
|
|
11966
|
-
`, isInline: true, dependencies: [{ kind: "component", type:
|
|
11976
|
+
<dbx-button #button (buttonClick)="showHelpPopover()" [buttonStyle]="buttonStyleSignal()" [buttonDisplay]="buttonDisplaySignal()"></dbx-button>
|
|
11977
|
+
`, isInline: true, dependencies: [{ kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["bar", "type", "buttonStyle", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "raised", "stroked", "flat", "iconOnly", "fab", "mode"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11967
11978
|
}
|
|
11968
11979
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxHelpViewPopoverButtonComponent, decorators: [{
|
|
11969
11980
|
type: Component,
|
|
11970
11981
|
args: [{
|
|
11971
11982
|
selector: 'dbx-help-view-popover-button',
|
|
11972
11983
|
template: `
|
|
11973
|
-
<dbx-
|
|
11984
|
+
<dbx-button #button (buttonClick)="showHelpPopover()" [buttonStyle]="buttonStyleSignal()" [buttonDisplay]="buttonDisplaySignal()"></dbx-button>
|
|
11974
11985
|
`,
|
|
11975
11986
|
standalone: true,
|
|
11976
|
-
imports: [
|
|
11987
|
+
imports: [DbxButtonComponent],
|
|
11977
11988
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
11978
11989
|
}]
|
|
11979
11990
|
}] });
|