@sd-angular/core 0.0.1050 → 0.0.1052
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/api/package.json +2 -3
- package/api/sd-angular-core-api.metadata.json +1 -1
- package/bundles/sd-angular-core-api.umd.js +3 -25
- package/bundles/sd-angular-core-api.umd.js.map +1 -1
- package/bundles/sd-angular-core-api.umd.min.js +1 -1
- package/bundles/sd-angular-core-api.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-chart.umd.js +1 -1
- package/bundles/sd-angular-core-chart.umd.min.js +1 -1
- package/bundles/sd-angular-core-chart.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-date-range.umd.js +1 -1
- package/bundles/sd-angular-core-date-range.umd.min.js +1 -1
- package/bundles/sd-angular-core-date-time.umd.js +1 -1
- package/bundles/sd-angular-core-date-time.umd.min.js +2 -2
- package/bundles/sd-angular-core-editor.umd.js +1 -1
- package/bundles/sd-angular-core-editor.umd.min.js +1 -1
- package/bundles/sd-angular-core-export.umd.js +5 -24
- package/bundles/sd-angular-core-export.umd.js.map +1 -1
- package/bundles/sd-angular-core-export.umd.min.js +1 -1
- package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-filter.umd.js +1 -1
- package/bundles/sd-angular-core-filter.umd.min.js +1 -1
- package/bundles/sd-angular-core-filter.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-grid-material.umd.js +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-grid.umd.js +1 -1
- package/bundles/sd-angular-core-grid.umd.min.js +1 -1
- package/bundles/sd-angular-core-grid.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-currency.umd.js +1 -1
- package/bundles/sd-angular-core-input-currency.umd.min.js +1 -1
- package/bundles/sd-angular-core-konva.umd.js +1 -1
- package/bundles/sd-angular-core-konva.umd.min.js +1 -1
- package/bundles/sd-angular-core-notify.umd.js +1 -1
- package/bundles/sd-angular-core-notify.umd.min.js +1 -1
- package/bundles/sd-angular-core-notify.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.js +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.min.js +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-upload-file.umd.js +1 -1
- package/bundles/sd-angular-core-upload-file.umd.min.js +1 -1
- package/bundles/sd-angular-core-utility.umd.js +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js.map +1 -1
- package/bundles/sd-angular-core.umd.js +6 -734
- package/bundles/sd-angular-core.umd.js.map +1 -1
- package/bundles/sd-angular-core.umd.min.js +1 -1
- package/bundles/sd-angular-core.umd.min.js.map +1 -1
- package/esm2015/api/src/lib/api.service.js +2 -2
- package/esm2015/api/src/lib/http.service.js +1 -1
- package/esm2015/export/src/lib/export.service.js +2 -2
- package/esm2015/lib/core.module.js +4 -36
- package/esm2015/public-api.js +1 -10
- package/fesm2015/sd-angular-core-api.js +2 -3
- package/fesm2015/sd-angular-core-api.js.map +1 -1
- package/fesm2015/sd-angular-core-export.js +1 -1
- package/fesm2015/sd-angular-core-export.js.map +1 -1
- package/fesm2015/sd-angular-core.js +5 -367
- package/fesm2015/sd-angular-core.js.map +1 -1
- package/package.json +4 -10
- package/public-api.d.ts +0 -7
- package/sd-angular-core-0.0.1052.tgz +0 -0
- package/sd-angular-core.metadata.json +1 -1
- package/assets/ckeditor/CHANGES.md +0 -1703
- package/assets/ckeditor/LICENSE.md +0 -1420
- package/assets/ckeditor/README.md +0 -39
- package/assets/ckeditor/adapters/jquery.js +0 -10
- package/assets/ckeditor/build-config.js +0 -123
- package/assets/ckeditor/ckeditor.js +0 -27038
- package/assets/ckeditor/config.js +0 -10
- package/assets/ckeditor/contents.css +0 -209
- package/assets/ckeditor/lang/en.js +0 -5
- package/assets/ckeditor/lang/vi.js +0 -5
- package/assets/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +0 -10
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt +0 -25
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/af.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/az.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/da.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/de.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/el.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/en-au.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/es-mx.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/es.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/et.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/he.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/id.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/it.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js +0 -9
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/km.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js +0 -10
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/no.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/oc.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js +0 -13
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/si.js +0 -10
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/th.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js +0 -12
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js +0 -11
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js +0 -9
- package/assets/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js +0 -9
- package/assets/ckeditor/plugins/about/dialogs/about.js +0 -8
- package/assets/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png +0 -0
- package/assets/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
- package/assets/ckeditor/plugins/clipboard/dialogs/paste.js +0 -11
- package/assets/ckeditor/plugins/colordialog/dialogs/colordialog.css +0 -20
- package/assets/ckeditor/plugins/colordialog/dialogs/colordialog.js +0 -14
- package/assets/ckeditor/plugins/copyformatting/cursors/cursor-disabled.svg +0 -25
- package/assets/ckeditor/plugins/copyformatting/cursors/cursor.svg +0 -14
- package/assets/ckeditor/plugins/copyformatting/styles/copyformatting.css +0 -45
- package/assets/ckeditor/plugins/dialog/dialogDefinition.js +0 -4
- package/assets/ckeditor/plugins/div/dialogs/div.js +0 -9
- package/assets/ckeditor/plugins/find/dialogs/find.js +0 -25
- package/assets/ckeditor/plugins/flash/dialogs/flash.js +0 -24
- package/assets/ckeditor/plugins/flash/images/placeholder.png +0 -0
- package/assets/ckeditor/plugins/forms/dialogs/button.js +0 -8
- package/assets/ckeditor/plugins/forms/dialogs/checkbox.js +0 -9
- package/assets/ckeditor/plugins/forms/dialogs/form.js +0 -8
- package/assets/ckeditor/plugins/forms/dialogs/hiddenfield.js +0 -7
- package/assets/ckeditor/plugins/forms/dialogs/radio.js +0 -9
- package/assets/ckeditor/plugins/forms/dialogs/select.js +0 -21
- package/assets/ckeditor/plugins/forms/dialogs/textarea.js +0 -8
- package/assets/ckeditor/plugins/forms/dialogs/textfield.js +0 -11
- package/assets/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
- package/assets/ckeditor/plugins/icons.png +0 -0
- package/assets/ckeditor/plugins/icons_hidpi.png +0 -0
- package/assets/ckeditor/plugins/iframe/dialogs/iframe.js +0 -10
- package/assets/ckeditor/plugins/iframe/images/placeholder.png +0 -0
- package/assets/ckeditor/plugins/image/dialogs/image.js +0 -44
- package/assets/ckeditor/plugins/image/images/noimage.png +0 -0
- package/assets/ckeditor/plugins/link/dialogs/anchor.js +0 -8
- package/assets/ckeditor/plugins/link/dialogs/link.js +0 -30
- package/assets/ckeditor/plugins/link/images/anchor.png +0 -0
- package/assets/ckeditor/plugins/link/images/hidpi/anchor.png +0 -0
- package/assets/ckeditor/plugins/liststyle/dialogs/liststyle.js +0 -10
- package/assets/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png +0 -0
- package/assets/ckeditor/plugins/magicline/images/hidpi/icon.png +0 -0
- package/assets/ckeditor/plugins/magicline/images/icon-rtl.png +0 -0
- package/assets/ckeditor/plugins/magicline/images/icon.png +0 -0
- package/assets/ckeditor/plugins/notification/lang/az.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/bg.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ca.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/cs.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/da.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/de-ch.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/de.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/en-au.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/en.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/eo.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/es-mx.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/es.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/et.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/eu.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/fa.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/fr.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/gl.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/hr.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/hu.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/id.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/it.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ja.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/km.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ko.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ku.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/lt.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/lv.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/nb.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/nl.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/oc.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/pl.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/pt-br.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/pt.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ro.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ru.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/sk.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/sq.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/sr-latn.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/sr.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/sv.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/tr.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/ug.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/uk.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/zh-cn.js +0 -7
- package/assets/ckeditor/plugins/notification/lang/zh.js +0 -7
- package/assets/ckeditor/plugins/notification/plugin.js +0 -933
- package/assets/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
- package/assets/ckeditor/plugins/pastefromword/filter/default.js +0 -55
- package/assets/ckeditor/plugins/preview/preview.html +0 -13
- package/assets/ckeditor/plugins/scayt/CHANGELOG.md +0 -20
- package/assets/ckeditor/plugins/scayt/LICENSE.md +0 -28
- package/assets/ckeditor/plugins/scayt/README.md +0 -81
- package/assets/ckeditor/plugins/scayt/dialogs/dialog.css +0 -23
- package/assets/ckeditor/plugins/scayt/dialogs/options.js +0 -32
- package/assets/ckeditor/plugins/scayt/dialogs/toolbar.css +0 -71
- package/assets/ckeditor/plugins/scayt/skins/moono-lisa/scayt.css +0 -25
- package/assets/ckeditor/plugins/showblocks/images/block_address.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_div.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_p.png +0 -0
- package/assets/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
- package/assets/ckeditor/plugins/smiley/dialogs/smiley.js +0 -11
- package/assets/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/angel_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/angry_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/broken_heart.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/confused_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/cry_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/devil_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/embarrassed_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/embarrassed_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/envelope.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/envelope.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/heart.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/heart.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/kiss.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/kiss.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/lightbulb.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/omg_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/regular_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/sad_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/shades_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/teeth_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/thumbs_down.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/thumbs_up.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/tongue_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/tongue_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png +0 -0
- package/assets/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
- package/assets/ckeditor/plugins/smiley/images/wink_smile.png +0 -0
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt +0 -20
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/af.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ar.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/az.js +0 -10
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/bg.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ca.js +0 -14
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/cs.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/cy.js +0 -14
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/da.js +0 -11
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/de.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/el.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/en-au.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/en-ca.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/en.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/eo.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/es-mx.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/es.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/et.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/eu.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/fa.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/fi.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js +0 -10
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/fr.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/gl.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/he.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/hr.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/hu.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/id.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/it.js +0 -14
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ja.js +0 -9
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/km.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ko.js +0 -10
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ku.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/lt.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/lv.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/nb.js +0 -11
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/nl.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/no.js +0 -11
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/oc.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/pl.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js +0 -11
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/pt.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ro.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ru.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/si.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/sk.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/sl.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/sq.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/sr-latn.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/sr.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/sv.js +0 -11
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/th.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/tr.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/tt.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/ug.js +0 -13
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/uk.js +0 -12
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/vi.js +0 -14
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js +0 -9
- package/assets/ckeditor/plugins/specialchar/dialogs/lang/zh.js +0 -9
- package/assets/ckeditor/plugins/specialchar/dialogs/specialchar.js +0 -14
- package/assets/ckeditor/plugins/table/dialogs/table.js +0 -21
- package/assets/ckeditor/plugins/tableselection/styles/tableselection.css +0 -36
- package/assets/ckeditor/plugins/tabletools/dialogs/tableCell.js +0 -19
- package/assets/ckeditor/plugins/templates/dialogs/templates.css +0 -84
- package/assets/ckeditor/plugins/templates/dialogs/templates.js +0 -10
- package/assets/ckeditor/plugins/templates/templates/default.js +0 -7
- package/assets/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
- package/assets/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
- package/assets/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
- package/assets/ckeditor/plugins/videoembed/.gitattributes +0 -17
- package/assets/ckeditor/plugins/videoembed/README.md +0 -35
- package/assets/ckeditor/plugins/videoembed/dialogs/videoembedDialog.js +0 -114
- package/assets/ckeditor/plugins/videoembed/icons/videoembed.png +0 -0
- package/assets/ckeditor/plugins/videoembed/lang/en.js +0 -8
- package/assets/ckeditor/plugins/videoembed/lang/fr.js +0 -8
- package/assets/ckeditor/plugins/videoembed/plugin.js +0 -27
- package/assets/ckeditor/plugins/widget/images/handle.png +0 -0
- package/assets/ckeditor/plugins/wordcount/css/wordcount.css +0 -3
- package/assets/ckeditor/plugins/wordcount/lang/ar.js +0 -12
- package/assets/ckeditor/plugins/wordcount/lang/bg.js +0 -17
- package/assets/ckeditor/plugins/wordcount/lang/ca.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/cs.js +0 -15
- package/assets/ckeditor/plugins/wordcount/lang/da.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/de.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/el.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/en.js +0 -17
- package/assets/ckeditor/plugins/wordcount/lang/es.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/eu.js +0 -17
- package/assets/ckeditor/plugins/wordcount/lang/fa.js +0 -13
- package/assets/ckeditor/plugins/wordcount/lang/fi.js +0 -15
- package/assets/ckeditor/plugins/wordcount/lang/fr.js +0 -12
- package/assets/ckeditor/plugins/wordcount/lang/he.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/hr.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/hu.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/it.js +0 -15
- package/assets/ckeditor/plugins/wordcount/lang/ja.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/ko.js +0 -16
- package/assets/ckeditor/plugins/wordcount/lang/nl.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/no.js +0 -11
- package/assets/ckeditor/plugins/wordcount/lang/pl.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/pt-br.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/pt.js +0 -10
- package/assets/ckeditor/plugins/wordcount/lang/ro.js +0 -15
- package/assets/ckeditor/plugins/wordcount/lang/ru.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/sk.js +0 -15
- package/assets/ckeditor/plugins/wordcount/lang/sv.js +0 -15
- package/assets/ckeditor/plugins/wordcount/lang/tr.js +0 -14
- package/assets/ckeditor/plugins/wordcount/lang/uk.js +0 -17
- package/assets/ckeditor/plugins/wordcount/lang/zh-cn.js +0 -17
- package/assets/ckeditor/plugins/wordcount/lang/zh.js +0 -17
- package/assets/ckeditor/plugins/wordcount/plugin.js +0 -639
- package/assets/ckeditor/plugins/wordcount/samples/maxParagraphs.html +0 -26
- package/assets/ckeditor/plugins/wordcount/samples/wordcount.html +0 -61
- package/assets/ckeditor/plugins/wordcount/samples/wordcountWithMaxCount.html +0 -110
- package/assets/ckeditor/plugins/wsc/LICENSE.md +0 -28
- package/assets/ckeditor/plugins/wsc/README.md +0 -80
- package/assets/ckeditor/plugins/wsc/dialogs/ciframe.html +0 -66
- package/assets/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +0 -52
- package/assets/ckeditor/plugins/wsc/dialogs/wsc.css +0 -82
- package/assets/ckeditor/plugins/wsc/dialogs/wsc.js +0 -91
- package/assets/ckeditor/plugins/wsc/dialogs/wsc_ie.js +0 -11
- package/assets/ckeditor/plugins/wsc/skins/moono-lisa/wsc.css +0 -43
- package/assets/ckeditor/samples/css/samples.css +0 -1637
- package/assets/ckeditor/samples/img/github-top.png +0 -0
- package/assets/ckeditor/samples/img/header-bg.png +0 -0
- package/assets/ckeditor/samples/img/header-separator.png +0 -0
- package/assets/ckeditor/samples/img/logo.png +0 -0
- package/assets/ckeditor/samples/img/logo.svg +0 -13
- package/assets/ckeditor/samples/img/navigation-tip.png +0 -0
- package/assets/ckeditor/samples/index.html +0 -128
- package/assets/ckeditor/samples/js/sample.js +0 -53
- package/assets/ckeditor/samples/js/sf.js +0 -17
- package/assets/ckeditor/samples/old/ajax.html +0 -85
- package/assets/ckeditor/samples/old/api.html +0 -210
- package/assets/ckeditor/samples/old/appendto.html +0 -59
- package/assets/ckeditor/samples/old/assets/inlineall/logo.png +0 -0
- package/assets/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css +0 -204
- package/assets/ckeditor/samples/old/assets/posteddata.php +0 -59
- package/assets/ckeditor/samples/old/assets/sample.jpg +0 -0
- package/assets/ckeditor/samples/old/assets/uilanguages/languages.js +0 -7
- package/assets/ckeditor/samples/old/datafiltering.html +0 -508
- package/assets/ckeditor/samples/old/dialog/assets/my_dialog.js +0 -48
- package/assets/ckeditor/samples/old/dialog/dialog.html +0 -190
- package/assets/ckeditor/samples/old/divarea/divarea.html +0 -64
- package/assets/ckeditor/samples/old/divreplace.html +0 -144
- package/assets/ckeditor/samples/old/enterkey/enterkey.html +0 -106
- package/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla +0 -0
- package/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf +0 -0
- package/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js +0 -19
- package/assets/ckeditor/samples/old/htmlwriter/outputforflash.html +0 -283
- package/assets/ckeditor/samples/old/htmlwriter/outputhtml.html +0 -224
- package/assets/ckeditor/samples/old/index.html +0 -134
- package/assets/ckeditor/samples/old/inlineall.html +0 -314
- package/assets/ckeditor/samples/old/inlinebycode.html +0 -124
- package/assets/ckeditor/samples/old/inlinetextarea.html +0 -113
- package/assets/ckeditor/samples/old/jquery.html +0 -103
- package/assets/ckeditor/samples/old/magicline/magicline.html +0 -209
- package/assets/ckeditor/samples/old/readonly.html +0 -76
- package/assets/ckeditor/samples/old/replacebyclass.html +0 -60
- package/assets/ckeditor/samples/old/replacebycode.html +0 -59
- package/assets/ckeditor/samples/old/sample.css +0 -357
- package/assets/ckeditor/samples/old/sample.js +0 -50
- package/assets/ckeditor/samples/old/sample_posteddata.php +0 -16
- package/assets/ckeditor/samples/old/tabindex.html +0 -78
- package/assets/ckeditor/samples/old/toolbar/toolbar.html +0 -235
- package/assets/ckeditor/samples/old/uicolor.html +0 -72
- package/assets/ckeditor/samples/old/uilanguages.html +0 -122
- package/assets/ckeditor/samples/old/wysiwygarea/fullpage.html +0 -80
- package/assets/ckeditor/samples/old/xhtmlstyle.html +0 -234
- package/assets/ckeditor/samples/toolbarconfigurator/css/fontello.css +0 -55
- package/assets/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt +0 -10
- package/assets/ckeditor/samples/toolbarconfigurator/font/config.json +0 -28
- package/assets/ckeditor/samples/toolbarconfigurator/font/fontello.eot +0 -0
- package/assets/ckeditor/samples/toolbarconfigurator/font/fontello.svg +0 -14
- package/assets/ckeditor/samples/toolbarconfigurator/font/fontello.ttf +0 -0
- package/assets/ckeditor/samples/toolbarconfigurator/font/fontello.woff +0 -0
- package/assets/ckeditor/samples/toolbarconfigurator/index.html +0 -446
- package/assets/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js +0 -13
- package/assets/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js +0 -9
- package/assets/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js +0 -33
- package/assets/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js +0 -14
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE +0 -19
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css +0 -325
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js +0 -288
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js +0 -25
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css +0 -36
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css +0 -38
- package/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js +0 -16
- package/assets/ckeditor/skins/office2013/dialog.css +0 -5
- package/assets/ckeditor/skins/office2013/editor.css +0 -5
- package/assets/ckeditor/skins/office2013/icons.png +0 -0
- package/assets/ckeditor/skins/office2013/icons_hidpi.png +0 -0
- package/assets/ckeditor/skins/office2013/images/arrow.png +0 -0
- package/assets/ckeditor/skins/office2013/images/close.png +0 -0
- package/assets/ckeditor/skins/office2013/images/hidpi/close.png +0 -0
- package/assets/ckeditor/skins/office2013/images/hidpi/lock-open.png +0 -0
- package/assets/ckeditor/skins/office2013/images/hidpi/lock.png +0 -0
- package/assets/ckeditor/skins/office2013/images/hidpi/refresh.png +0 -0
- package/assets/ckeditor/skins/office2013/images/lock-open.png +0 -0
- package/assets/ckeditor/skins/office2013/images/lock.png +0 -0
- package/assets/ckeditor/skins/office2013/images/refresh.png +0 -0
- package/assets/ckeditor/styles.js +0 -137
- package/bundles/sd-angular-core-modal-custom.umd.js +0 -487
- package/bundles/sd-angular-core-modal-custom.umd.js.map +0 -1
- package/bundles/sd-angular-core-modal-custom.umd.min.js +0 -16
- package/bundles/sd-angular-core-modal-custom.umd.min.js.map +0 -1
- package/esm2015/lib/controls/ckeditor-control/ckeditor-control.component.js +0 -53
- package/esm2015/lib/controls/date-picker-control/date-picker-control.component.js +0 -156
- package/esm2015/lib/pipes/sd-date.pipe.js +0 -15
- package/esm2015/lib/validators/chip-min-item.validator.js +0 -26
- package/esm2015/lib/validators/custom.validator.js +0 -39
- package/esm2015/lib/validators/max-date.validator.js +0 -30
- package/esm2015/lib/validators/min-date.validator.js +0 -30
- package/esm2015/modal-custom/index.js +0 -2
- package/esm2015/modal-custom/sd-angular-core-modal-custom.js +0 -5
- package/esm2015/modal-custom/src/lib/modal-custom/modal-custom.component.js +0 -123
- package/esm2015/modal-custom/src/lib/modal-custom.module.js +0 -30
- package/esm2015/modal-custom/src/public-api.js +0 -6
- package/fesm2015/sd-angular-core-modal-custom.js +0 -161
- package/fesm2015/sd-angular-core-modal-custom.js.map +0 -1
- package/lib/controls/ckeditor-control/ckeditor-control.component.d.ts +0 -20
- package/lib/controls/date-picker-control/date-picker-control.component.d.ts +0 -36
- package/lib/pipes/sd-date.pipe.d.ts +0 -4
- package/lib/validators/chip-min-item.validator.d.ts +0 -5
- package/lib/validators/custom.validator.d.ts +0 -5
- package/lib/validators/max-date.validator.d.ts +0 -5
- package/lib/validators/min-date.validator.d.ts +0 -5
- package/modal-custom/index.d.ts +0 -1
- package/modal-custom/package.json +0 -12
- package/modal-custom/sd-angular-core-modal-custom.d.ts +0 -4
- package/modal-custom/sd-angular-core-modal-custom.metadata.json +0 -1
- package/modal-custom/src/lib/modal-custom/modal-custom.component.d.ts +0 -31
- package/modal-custom/src/lib/modal-custom.module.d.ts +0 -2
- package/modal-custom/src/public-api.d.ts +0 -2
- package/sd-angular-core-0.0.1050.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../projects/sd-core/api/src/lib/api.model.ts","../../../../projects/sd-core/api/src/lib/token.service.ts","../../../../projects/sd-core/api/src/lib/http.interceptor.ts","../../../../projects/sd-core/api/src/lib/api.module.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/api/src/lib/api.service.ts","../../../../projects/sd-core/api/src/lib/http.service.ts"],"names":["API_CONFIG","InjectionToken","TOKEN","hash","origin","location","key","SdTokenService","configuration","cacheService","_this","this","set","token","create","type","hours","clear","remove","Object","defineProperty","prototype","get","_b","_a","customHeaders","call","Injectable","args","providedIn","Inject","Optional","SdCacheService","SdHttpInterceptor","tokenService","intercept","request","next","tokenHeader","clone","headers","url","startsWith","host","body","FormData","delete","beforeRemote","_d","_c","Promise","from","pipe","switchMap","handle","map","event","HttpResponse","afterRemote","catchError","error","throwError","NgModule","imports","HttpClientModule","exports","providers","provide","HTTP_INTERCEPTORS","useClass","multi","__awaiter","thisArg","_arguments","P","generator","resolve","reject","fulfilled","value","step","e","rejected","result","done","then","apply","__generator","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","pop","length","push","__values","o","s","m","i","__read","r","ar","__classPrivateFieldGet","receiver","state","kind","has","SdApiService","httpClient","uploadId","_timeout","_cacheDuration","_cache","translate","post","options","hashKey","uuid.v4","Date","addMiliseconds","createdDate","subject","Subject","responseType","encodeURI","observe","timeout","subscribe","res","response","status","err","ok","take","toPromise","postCache","cacheType","cacheHours","_e","_defineParams","rq","entries","_f","_g","encodeURIComponent","join","getWithParams","params","assign","getCacheWithParams","getCache","encodedUrl","uploadSingle","option","$","children","append","on","evt","fileToUpload","target","files","item","upload","catch","trigger","file","lastDot","name","lastIndexOf","message","Error","extension","substring","extensions","some","toUpperCase","maxSizeInMb","size","validator","formData","put","httpErrorResponse","HttpClient","method"],"mappings":"6oCAaaA,EAAa,IAAIC,EAAAA,eAAkC,qBAEnDC,EAAQC,EAAAA,QAAK,CACxBC,OAAQC,SAASD,OACjBE,IAAK,sDCoBL,SAAAC,EAC0CC,EAChCC,GAFV,IAAAC,EAAAC,KAC0CA,KAAAH,cAAAA,EAChCG,KAAAF,aAAAA,EAtBVE,KAAAC,IAAM,SAACC,IAKLD,EAJgBF,EAAKD,aAAaK,OAAeZ,EAAO,CACtDa,KAAM,QACNC,MAAO,MACPJ,KACEC,IAGNF,KAAAM,MAAQ,YAKNC,EAJmBR,EAAKD,aAAaK,OAAeZ,EAAO,CACzDa,KAAM,QACNC,MAAO,MACPE,kBApBJC,OAAAC,eAAIb,EAAAc,UAAA,QAAK,KAAT,WAKE,OAAOC,EAJSX,KAAKF,aAAaK,OAAeZ,EAAO,CACtDa,KAAM,QACNC,MAAO,MACPM,wCAoBJH,OAAAC,eAAIb,EAAAc,UAAA,gBAAa,KAAjB,mBACE,OAAwC,QAAjCE,EAAkB,QAAlBC,EAAAb,KAAKH,qBAAa,IAAAgB,OAAA,EAAAA,EAAEC,qBAAa,IAAAF,OAAA,EAAAA,EAAAG,KAAAF,KAAQ,wMA9BnDG,EAAAA,WAAUC,KAAA,CAAC,CACVC,WAAY,6EAiCTC,EAAAA,OAAMF,KAAA,CAAC5B,IAAU,CAAAe,KAAGgB,EAAAA,kBApChBC,EAAAA,mCCOP,SAAAC,EAC0CzB,EAChC0B,GADgCvB,KAAAH,cAAAA,EAChCG,KAAAuB,aAAAA,SAEVD,EAAAZ,UAAAc,UAAA,SAAUC,EAA2BC,GAArC,YAAA3B,EAAAC,MACwB,QAAlBa,EAAAb,KAAKH,qBAAa,IAAAgB,OAAA,EAAAA,EAAEc,cAAe3B,KAAKuB,aAAarB,QACvDuB,EAAUA,EAAQG,MAAM,CAAEC,QAASJ,EAAQI,QAAQ5B,IAAID,KAAKH,cAAc8B,YAAa3B,KAAKuB,aAAarB,UAGtGuB,EAAQK,IAAIC,WAAW,UAC1BN,EAAUA,EAAQG,MAAM,CACtBE,MAAwB,QAAlBlB,EAAAZ,KAAKH,qBAAa,IAAAe,OAAA,EAAAA,EAAEoB,OAAQtC,SAASsC,MAAQP,EAAQK,OAG3DL,EAAQQ,gBAAgBC,WAC1BT,EAAUA,EAAQG,MAAM,CACtBC,QAASJ,EAAQI,QAAQM,OAAO,mBAGpC,IAAMC,EAA+C,QAAnCC,EAAqB,QAArBC,EAAGtC,KAAKH,qBAAa,IAAAyC,OAAA,EAAAA,EAAEF,oBAAY,IAAAC,OAAA,EAAAA,EAAAtB,KAAAuB,EAAGb,GACxD,OAAIW,aAAwBG,QACnBC,EAAAA,KAAKJ,GAAcK,KACxBC,EAAAA,WAAU,WAAM,OAAAhB,EAAKiB,OAAOlB,MAC5BmB,EAAAA,KAAI,SAACC,WAIH,OAHIA,aAAiBC,EAAAA,eACY,QAA/BlC,EAAkB,QAAlBC,EAAAd,EAAKF,qBAAa,IAAAgB,OAAA,EAAAA,EAAEkC,mBAAW,IAAAnC,GAAAA,EAAAG,KAAAF,EAAGgC,IAE7BA,KAETG,EAAAA,YAAW,SAACC,WAEV,OAD+B,QAA/BrC,EAAkB,QAAlBC,EAAAd,EAAKF,qBAAa,IAAAgB,OAAA,EAAAA,EAAEkC,mBAAW,IAAAnC,GAAAA,EAAAG,KAAAF,EAAGoC,GAC3BC,EAAAA,WAAWD,OAGjBvB,EAAKiB,OAAOlB,GAASgB,KAC1BG,EAAAA,KAAI,SAACC,WAIH,OAHIA,aAAiBC,EAAAA,eACY,QAA/BlC,EAAkB,QAAlBC,EAAAd,EAAKF,qBAAa,IAAAgB,OAAA,EAAAA,EAAEkC,mBAAW,IAAAnC,GAAAA,EAAAG,KAAAF,EAAGgC,IAE7BA,KAETG,EAAAA,YAAW,SAACC,WAEV,OAD+B,QAA/BrC,EAAkB,QAAlBC,EAAAd,EAAKF,qBAAa,IAAAgB,OAAA,EAAAA,EAAEkC,mBAAW,IAAAnC,GAAAA,EAAAG,KAAAF,EAAGoC,GAC3BC,EAAAA,WAAWD,iCA7CzBjC,EAAAA,+EAGIG,EAAAA,OAAMF,KAAA,CAAC5B,IAAU,CAAAe,KAAGgB,EAAAA,kBALhBxB,WCUT,iCAXCuD,EAAAA,SAAQlC,KAAA,CAAC,CACRmC,QAAS,CACPC,EAAAA,kBAEFC,QAAS,CACPD,EAAAA,kBAEFE,UAAW,CACT,CAAEC,QAASC,EAAAA,kBAAmBC,SAAUpC,EAAmBqC,OAAO,iBCyDtDC,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIxB,WAAU,SAAU0B,EAASC,GAC/C,SAASC,EAAUC,GAAS,IAAMC,EAAKL,EAAUtC,KAAK0C,IAAW,MAAOE,GAAKJ,EAAOI,IACpF,SAASC,EAASH,GAAS,IAAMC,EAAKL,EAAiB,MAAEI,IAAW,MAAOE,GAAKJ,EAAOI,IACvF,SAASD,EAAKG,GAJlB,IAAeJ,EAIaI,EAAOC,KAAOR,EAAQO,EAAOJ,QAJ1CA,EAIyDI,EAAOJ,MAJhDA,aAAiBL,EAAIK,EAAQ,IAAIL,GAAE,SAAUE,GAAWA,EAAQG,OAITM,KAAKP,EAAWI,GAClGF,GAAML,EAAYA,EAAUW,MAAMd,EAASC,GAAc,KAAKpC,oBAItDkD,EAAYf,EAAS5B,GACjC,IAAsG4C,EAAGC,EAAGC,EAAGC,EAA3GC,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPJ,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOK,KAAM,GAAIC,IAAK,IAChG,OAAOL,EAAI,CAAEtD,KAAM4D,EAAK,GAAIC,MAASD,EAAK,GAAIE,OAAUF,EAAK,IAAwB,mBAAXG,SAA0BT,EAAES,OAAOC,UAAY,WAAa,OAAO1F,OAAUgF,EACvJ,SAASM,EAAKK,GAAK,OAAO,SAAUC,GAAK,OACzC,SAAcC,GACV,GAAIhB,EAAG,MAAM,IAAIiB,UAAU,mCAC3B,KAAOb,OACH,GAAIJ,EAAI,EAAGC,IAAMC,EAAY,EAARc,EAAG,GAASf,EAAU,OAAIe,EAAG,GAAKf,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAEhE,KAAK+D,GAAI,GAAKA,EAAEpD,SAAWqD,EAAIA,EAAEhE,KAAK+D,EAAGe,EAAG,KAAKpB,KAAM,OAAOM,EAE3J,OADID,EAAI,EAAGC,IAAGc,EAAK,CAAS,EAARA,EAAG,GAAQd,EAAEX,QACzByB,EAAG,IACP,KAAK,EAAG,KAAK,EAAGd,EAAIc,EAAI,MACxB,KAAK,EAAc,OAAXZ,EAAEC,QAAgB,CAAEd,MAAOyB,EAAG,GAAIpB,MAAM,GAChD,KAAK,EAAGQ,EAAEC,QAASJ,EAAIe,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKZ,EAAEI,IAAIU,MAAOd,EAAEG,KAAKW,MAAO,SACxC,QACI,KAAMhB,EAAIE,EAAEG,MAAML,EAAIA,EAAEiB,OAAS,GAAKjB,EAAEA,EAAEiB,OAAS,KAAkB,IAAVH,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEZ,EAAI,EAAG,SACjG,GAAc,IAAVY,EAAG,MAAcd,GAAMc,EAAG,GAAKd,EAAE,IAAMc,EAAG,GAAKd,EAAE,IAAM,CAAEE,EAAEC,MAAQW,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYZ,EAAEC,MAAQH,EAAE,GAAI,CAAEE,EAAEC,MAAQH,EAAE,GAAIA,EAAIc,EAAI,MAC7D,GAAId,GAAKE,EAAEC,MAAQH,EAAE,GAAI,CAAEE,EAAEC,MAAQH,EAAE,GAAIE,EAAEI,IAAIY,KAAKJ,GAAK,MACvDd,EAAE,IAAIE,EAAEI,IAAIU,MAChBd,EAAEG,KAAKW,MAAO,SAEtBF,EAAK5D,EAAKlB,KAAK8C,EAASoB,GAC1B,MAAOX,GAAKuB,EAAK,CAAC,EAAGvB,GAAIQ,EAAI,UAAeD,EAAIE,EAAI,EACtD,GAAY,EAARc,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAEzB,MAAOyB,EAAG,GAAKA,EAAG,QAAK,EAAQpB,MAAM,GArB9BJ,CAAK,CAACsB,EAAGC,MAyBhCpF,OAAOL,gBAYpB+F,EAASC,GACrB,IAAIC,EAAsB,mBAAXX,QAAyBA,OAAOC,SAAUW,EAAID,GAAKD,EAAEC,GAAIE,EAAI,EAC5E,GAAID,EAAG,OAAOA,EAAEtF,KAAKoF,GACrB,GAAIA,GAAyB,iBAAbA,EAAEH,OAAqB,MAAO,CAC1CtE,KAAM,WAEF,OADIyE,GAAKG,GAAKH,EAAEH,SAAQG,OAAI,GACrB,CAAE/B,MAAO+B,GAAKA,EAAEG,KAAM7B,MAAO0B,KAG5C,MAAM,IAAIL,UAAUM,EAAI,0BAA4B,4CAGxCG,EAAOJ,EAAGR,GACtB,IAAIU,EAAsB,mBAAXZ,QAAyBU,EAAEV,OAAOC,UACjD,IAAKW,EAAG,OAAOF,EACf,IAAmBK,EAAYlC,EAA3BgC,EAAID,EAAEtF,KAAKoF,GAAOM,EAAK,GAC3B,IACI,WAAc,IAANd,GAAgBA,KAAM,MAAQa,EAAIF,EAAE5E,QAAQ+C,MAAMgC,EAAGR,KAAKO,EAAEpC,OAExE,MAAOnB,GAASqB,EAAI,CAAErB,MAAOA,WAEzB,IACQuD,IAAMA,EAAE/B,OAAS4B,EAAIC,EAAU,SAAID,EAAEtF,KAAKuF,WAExC,GAAIhC,EAAG,MAAMA,EAAErB,OAE7B,OAAOwD,EAgEX,YAAyBjG,OAAOL,gBAkBhBuG,EAAuBC,EAAUC,EAAOC,EAAMhC,GAC1D,GAAa,MAATgC,IAAiBhC,EAAG,MAAM,IAAIiB,UAAU,iDAC5C,GAAqB,mBAAVc,EAAuBD,IAAaC,IAAU/B,GAAK+B,EAAME,IAAIH,GAAW,MAAM,IAAIb,UAAU,4EACvG,MAAgB,MAATe,EAAehC,EAAa,MAATgC,EAAehC,EAAE9D,KAAK4F,GAAY9B,EAAIA,EAAET,MAAQwC,EAAMjG,IAAIgG,oBCnMtF,SAAAI,EACUC,EACgCnH,EAChCC,EACAyB,GAJV,IAAAxB,EAAAC,KACUA,KAAAgH,WAAAA,EACgChH,KAAAH,cAAAA,EAChCG,KAAAF,aAAAA,EACAE,KAAAuB,aAAAA,EAxBFvB,KAAAiH,SAAW,wCAEnBC,EAAAjH,IAAAD,KAAW,MAEXmH,EAAAlH,IAAAD,KAAiB,KACjBoH,EAAAnH,IAAAD,KASI,IAEIA,KAAAqH,UAAY,SAACjD,SACnB,OAAyB,QAAlBvD,EAAAd,EAAKF,qBAAa,IAAAgB,OAAA,EAAAA,EAAEwG,UAAUjD,KAAUA,GAUjDpE,KAAAsH,KAAO,SAAgBxF,EAAaG,EAAYJ,EAAuB0F,GAEtE,OAAA3D,EAAA7D,OAAA,OAAA,GAAA,uDA4DC,GA3DA8B,EAAUA,GAAW7B,KAAKuB,aAAaT,cACnC0G,EAAUC,EAAAA,KACRxF,aAAgBC,WACpBsF,EAAUhI,EAAK,CACbsC,IAAGA,EACHD,QAAOA,EACPI,KAAIA,OAGHyE,EAAA1G,KAAAoH,GAAYI,IAAYE,KAAKC,eAAejB,EAAA1G,KAAAoH,GAAYI,GAASI,YAAWlB,EAAA1G,KAAAmH,IAAyB,IAAIO,QAC5GhB,EAAA1G,KAAAoH,GAAYI,GAAW,CACrBI,YAAa,IAAIF,KACjBG,QAAS,IAAIC,EAAAA,UAEXP,MAAAA,OAAO,EAAPA,EAASQ,eAAyC,SAAzBR,EAAQQ,aACnC/H,KAAKgH,WAAWM,KAAKU,UAAUlG,GAAMG,EAAM,CACzCgG,QAAS,OACTpG,QAAOA,EACPkG,aAAcR,MAAAA,OAAO,EAAPA,EAASQ,eACtBtF,KAAKyF,EAAAA,QAAOxB,EAAA1G,KAAAkH,KAAiBiB,WAAU,SAACC,GACzC1B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,UACR9D,OAAQ4D,GAEV1B,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQnG,KAAK0G,MACjC,SAAAG,GACD7B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,QACR9D,OAAQ+D,GAEV7B,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQ5E,MAAMsF,MAGrCvI,KAAKgH,WAAWM,KAAKU,UAAUlG,GAAMG,EAAM,CACzCgG,QAAS,WACTpG,QAAOA,IACNY,KAAKyF,EAAAA,QAAOxB,EAAA1G,KAAAkH,KAAiBiB,WAAU,SAACC,GACrCA,EAAII,IACN9B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,UACR9D,OAAQ4D,EAAInG,MAEdyE,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQnG,KAAK0G,EAAInG,QAEtCyE,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,QACR9D,OAAQ4D,EAAInG,MAEdyE,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQ5E,MAAMmF,EAAInG,UAExC,SAAAsG,GACD7B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,QACR9D,OAAQ+D,GAEV7B,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQ5E,MAAMsF,OAIR,QAAjC1H,EAAI6F,EAAA1G,KAAAoH,GAAYI,GAASa,gBAAQ,IAAAxH,OAAA,EAAAA,EAAEyH,OAAQ,CACzC,GAA8C,aAAb,QAA7B1H,EAAA8F,EAAA1G,KAAAoH,GAAYI,GAASa,gBAAQ,IAAAzH,OAAA,EAAAA,EAAE0H,QACjC,MAAA,CAAA,EAAO5B,EAAA1G,KAAAoH,GAAYI,GAASa,SAAS7D,QAEvC,MAAMkC,EAAA1G,KAAAoH,GAAYI,GAASa,SAAS7D,OAEtC,MAAA,CAAA,EAAOkC,EAAA1G,KAAAoH,GAAYI,GAASK,QAAQpF,KAAKgG,EAAAA,KAAK,IAAIC,oBAGpD1I,KAAA2I,UAAY,SAAgB7G,EAAaG,EAAYsF,GAIpD,OAAA3D,EAAA7D,OAAA,OAAA,GAAA,kFACO8B,GAAU0F,MAAAA,OAAO,EAAPA,EAAS1F,UAAW7B,KAAKuB,aAAaT,cAChDuB,EAAoBrC,KAAKF,aAAaK,OAAO,CACjD2B,IAAGA,EACHD,QAAOA,EACPI,KAAIA,GACH,CACD7B,KAAMmH,MAAAA,OAAO,EAAPA,EAASqB,UACfvI,MAAOkH,MAAAA,OAAO,EAAPA,EAASsB,aANVlI,EAAG0B,EAAA1B,IAAEV,EAAGoC,EAAApC,KAAE6G,EAAGzE,EAAAyE,OAQjB,CAAA,EAAA,GACa,CAAA,EAAM9G,KAAKsH,KAAKxF,EAAKG,EAAMsF,MAAAA,OAAO,EAAPA,EAAS1F,iBAEnD,OAFM2C,EAASsE,EAAA3D,OACflF,EAAIuE,GACJ,CAAA,EAAOA,UAET,MAAA,CAAA,EAAO7D,aAqBToI,EAAA9I,IAAAD,MAAgB,SAACyB,WACTuH,EAAK,OACX,IAA2B,IAAAF,EAAA5C,EAAA1F,OAAOyI,QAAQxH,IAAQyH,EAAAJ,EAAApH,QAAAwH,EAAAzE,KAAAyE,EAAAJ,EAAApH,OAAE,CAAzC,IAAAyH,EAAA5C,EAAA2C,EAAA9E,MAAA,GAACzE,EAAGwJ,EAAA,GAAE/E,EAAK+E,EAAA,IAChB/E,GAAmB,IAAVA,IACX4E,EAAG/C,KACEmD,mBAAmBzJ,GAAc,IAAIyJ,mBACtChF,sGAKR,MAAO,KAAI4E,MAAAA,OAAE,EAAFA,EAAIK,KAAK,SAGtBrJ,KAAAsJ,cAAgB,SAAUxH,EAAayH,EAAahC,GAIlD,OAAOxH,EAAKY,IAAI,GAAGmB,EAAM4E,EAAA3G,EAAAgJ,GAAAhI,KAAAhB,EAAmBwJ,GAAWhC,MAAAA,OAAO,EAAPA,EAAS1F,QAAOrB,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GAAOjC,GAAO,CAAES,WAAW,MAGpGhI,KAAAyJ,mBAAqB,SAAU3H,EAAayH,EAAa1H,EAAuB0F,GAK9E,OAAOxH,EAAK2J,SAAS,GAAG5H,EAAM4E,EAAA3G,EAAAgJ,GAAAhI,KAAAhB,EAAmBwJ,GAAS/I,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GAAOjC,GAAO,CAAES,WAAW,MAGvFhI,KAAAW,IAAM,SAAUmB,EAAaD,EAAuB0F,WAIlD1F,EAAUA,GAAW9B,EAAKwB,aAAaT,cACvC,IAAM6I,GAAoC,KAAvBpC,MAAAA,OAAO,EAAPA,EAASS,WAAsBlG,EAAMkG,UAAUlG,GAK5D0F,EAAUhI,EAAK,CACnBmK,WAAUA,EACV9H,QAAOA,IA+CT,KA7CK6E,EAAA3G,EAAAqH,GAAYI,IAAYE,KAAKC,eAAejB,EAAA3G,EAAAqH,GAAYI,GAASI,YAAWlB,EAAA3G,EAAAoH,IAAyB,IAAIO,QAC5GhB,EAAA3G,EAAAqH,GAAYI,GAAW,CACrBI,YAAa,IAAIF,KACjBG,QAAS,IAAIC,EAAAA,UAEXP,MAAAA,OAAO,EAAPA,EAASQ,eAAyC,SAAzBR,EAAQQ,aACnChI,EAAKiH,WAAWrG,IAAIgJ,EAAY,CAAE1B,QAAS,OAAQpG,QAAOA,EAAEkG,aAAcR,MAAAA,OAAO,EAAPA,EAASQ,eAChFtF,KAAKyF,EAAAA,QAAOxB,EAAA3G,EAAAmH,KAAiBiB,WAAU,SAACC,GACvC1B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,UACR9D,OAAQ4D,GAEV1B,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQnG,KAAK0G,MACjC,SAAAG,GACD7B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,QACR9D,OAAQ+D,GAEV7B,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQ5E,MAAMsF,MAGvCxI,EAAKiH,WAAWrG,IAAIgJ,EAAY,CAAE1B,QAAS,WAAYpG,QAAOA,IAC3DY,KAAKyF,EAAAA,QAAOxB,EAAA3G,EAAAmH,KAAiBiB,WAAU,SAACC,GACnCA,EAAII,IACN9B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,UACR9D,OAAQ4D,EAAInG,MAEdyE,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQnG,KAAK0G,EAAInG,QAEtCyE,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,QACR9D,OAAQ4D,EAAInG,MAEdyE,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQ5E,MAAMmF,EAAInG,UAExC,SAAAsG,GACD7B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAW,CAC9BC,OAAQ,QACR9D,OAAQ+D,GAEV7B,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQ5E,MAAMsF,OAIV,QAAjC1H,EAAI6F,EAAA3G,EAAAqH,GAAYI,GAASa,gBAAQ,IAAAxH,OAAA,EAAAA,EAAEyH,OAAQ,CACzC,GAA8C,aAAb,QAA7B1H,EAAA8F,EAAA3G,EAAAqH,GAAYI,GAASa,gBAAQ,IAAAzH,OAAA,EAAAA,EAAE0H,QACjC,OAAO5B,EAAA3G,EAAAqH,GAAYI,GAASa,SAAS7D,OAEvC,MAAMkC,EAAA3G,EAAAqH,GAAYI,GAASa,SAAS7D,OAEtC,OAAOkC,EAAA3G,EAAAqH,GAAYI,GAASK,QAAQpF,KAAKgG,EAAAA,KAAK,IAAIC,aAGpD1I,KAAA0J,SAAW,SAAgB5H,EAAayF,GAKvC,OAAA3D,EAAA7D,OAAA,OAAA,GAAA,oFACO8B,GAAU0F,MAAAA,OAAO,EAAPA,EAAS1F,UAAW7B,KAAKuB,aAAaT,cAChD6I,GAAoC,KAAvBpC,MAAAA,OAAO,EAAPA,EAASS,WAAsBlG,EAAMkG,UAAUlG,GAC5DO,EAAoBrC,KAAKF,aAAaK,OAAO,CACjDwJ,WAAUA,EACV9H,QAAOA,GACN,CACDzB,KAAMmH,MAAAA,OAAO,EAAPA,EAASqB,UACfvI,MAAOkH,MAAAA,OAAO,EAAPA,EAASsB,aALVlI,EAAG0B,EAAA1B,IAAEV,EAAGoC,EAAApC,KAAE6G,EAAGzE,EAAAyE,OAOjB,CAAA,EAAA,GACa,CAAA,EAAM9G,KAAKW,IAAIgJ,EAAYpC,MAAAA,OAAO,EAAPA,EAAS1F,iBAEnD,OAFM2C,EAASsE,EAAA3D,OACflF,EAAIuE,GACJ,CAAA,EAAOA,UAET,MAAA,CAAA,EAAO7D,aAoBTX,KAAA4J,aAAe,SAAC9H,EAAa+H,GAK3B,OAAO,IAAItH,SAAQ,SAAC0B,EAASC,GACvB4F,EAAAA,QAAE,IAAI/J,EAAKkH,UAAYjB,QACzB8D,EAAAA,QAAE,QAAQC,SAAS,IAAIhK,EAAKkH,UAAY1G,SAE1CuJ,EAAAA,QAAE,QAAQE,OAAO,cAAcjK,EAAKkH,SAAQ,0CAC5C6C,EAAAA,QAAE,IAAI/J,EAAKkH,UAAYgD,GAAG,UAAU,SAACC,GACnC,IACE,IACMC,EADuBD,EAAIE,OACLC,MAAMC,KAAK,GACvCvK,EAAKwK,OAAOzI,EAAKqI,EAAcN,GAAQnF,KAAKT,GAASuG,MAAMtG,GAC3D,MAAOjB,GACPiB,EAAOjB,OAGX6G,EAAAA,QAAE,IAAI/J,EAAKkH,UAAYwD,QAAQ,aAInCzK,KAAAuK,OAAS,SAAOzI,EAAa4I,EAAYb,GAIxC,OAAAjG,EAAA7D,OAAA,OAAA,GAAA,2EAEC,IAAiB,KADX4K,EAAUD,EAAKE,KAAKC,YAAY,MAGpC,MADMC,EAAU9K,KAAKqH,UAAU,0BACzB,IAAI0D,MAAMD,GAGlB,GADME,EAAYN,EAAKE,KAAKK,UAAUN,EAAU,GAC5Cd,EAAQ,CACV,IAAqB,QAAjBvH,EAAAuH,EAAOqB,kBAAU,IAAA5I,OAAA,EAAAA,EAAE0D,UAAW6D,EAAOqB,WAAWC,MAAK,SAAA7G,GAAK,OAAAA,EAAE8G,gBAAkBJ,EAAUI,iBAE1F,MADMN,EAAU,IAAIJ,EAAKE,KAAI,KAAK5K,KAAKqH,UAAU,wCAAuC,IAAIwC,EAAOqB,WAAW7B,KAAK,MAC7G,IAAI0B,MAAMD,GAElB,GAAIjB,EAAOwB,YAAc,GAA0B,KAArBxB,EAAOwB,YAAqB,KAAOX,EAAKY,KAEpE,MADMR,EAAU,IAAIJ,EAAKE,KAAI,KAAK5K,KAAKqH,UAAU,iBAAgB,IAAIwC,EAAOwB,YAAW,OACjF,IAAIN,MAAMD,GAElB,GAAIjB,EAAO0B,WAAa1B,EAAO0B,UAAUb,EAAKE,MAE5C,MADME,EAAUjB,EAAO0B,UAAUb,EAAKE,MAChC,IAAIG,MAAMD,GAKb,OAFDU,EAAqB,IAAItJ,UACtB8H,OAAO,OAAQU,EAAMA,EAAKE,MAC5B,CAAA,EAAM5K,KAAKsH,KAAKxF,EAAK0J,WAA5B,MAAA,CAAA,EAAOnJ,EAAA8C,uBA7MT4B,EAAArG,UAAA+K,IAAA,SAAa3J,EAAaG,EAAYJ,GAAtC,IAAA9B,EAAAC,KAEE,OADA6B,EAAUA,GAAW7B,KAAKuB,aAAaT,cAChC,IAAIyB,SAAa,SAAC0B,EAASC,GAChCnE,EAAKiH,WAAWyE,IAAIzD,UAAUlG,GAAMG,EAAM,CACxCgG,QAAS,WACTpG,QAAOA,IACNY,KAAKyF,EAAAA,QAAOxB,EAAA3G,EAAAmH,KAAiBwB,YAAYhE,MAAK,SAAAF,GAC3CA,EAAOgE,GACTvE,EAAQO,EAAOvC,MAEfiC,EAAOM,EAAOvC,SAEfuI,OAAM,SAACkB,GACRxH,EAAOwH,UA6Hb3E,EAAArG,UAAAyB,OAAA,SAAgBL,EAAaD,GAA7B,IAAA9B,EAAAC,KAEE,OADA6B,EAAUA,GAAW7B,KAAKuB,aAAaT,cAChC,IAAIyB,SAAa,SAAC0B,EAASC,GAChCnE,EAAKiH,WAAW7E,OAAO6F,UAAUlG,GAAM,CAAEmG,QAAS,WAAYpG,QAAOA,IAClEY,KAAKyF,EAAAA,QAAOxB,EAAA3G,EAAAmH,KACZwB,YAAYhE,MAAK,SAAAF,GACZA,EAAOgE,GACTvE,EAAQO,EAAOvC,MAEfiC,EAAOM,EAAOvC,SAEfuI,OAAM,SAACkB,GACRxH,EAAOwH,2QAlRhB1K,EAAAA,WAAUC,KAAA,CAAC,CACVC,WAAY,oDAXLyK,EAAAA,2CAoCJxK,EAAAA,OAAMF,KAAA,CAAC5B,IAAU,CAAAe,KAAGgB,EAAAA,kBAhChBC,EAAAA,sBACAzB,WCIP,SACUoH,EACAzF,GAFV,IAAAxB,EAAAC,KACUA,KAAAgH,WAAAA,EACAhH,KAAAuB,aAAAA,EAGVvB,KAAAW,IAAK,SAAUmB,EAAa+H,GAK1B,OAJAA,EAAMrJ,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GACDK,GAAM,CACThI,QAASgI,EAAOhI,SAAW9B,EAAKwB,aAAaT,gBAExCf,EAAKiH,WAAWrG,IAAOmB,EAAK+H,IAGrC7J,KAAAsH,KAAO,SAAUxF,EAAaG,EAAY4H,GAKxC,OAJAA,EAAMrJ,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GACDK,GAAM,CACThI,QAASgI,EAAOhI,SAAW9B,EAAKwB,aAAaT,gBAExCf,EAAKiH,WAAWM,KAAQxF,EAAKG,EAAM4H,IAG5C7J,KAAAyL,IAAM,SAAU3J,EAAaG,EAAY4H,GAKvC,OAJAA,EAAMrJ,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GACDK,GAAM,CACThI,QAASgI,EAAOhI,SAAW9B,EAAKwB,aAAaT,gBAExCf,EAAKiH,WAAWyE,IAAO3J,EAAKG,EAAM4H,IAG3C7J,KAAAmC,OAAS,SAAUL,EAAa+H,GAK9B,OAJAA,EAAMrJ,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GACDK,GAAM,CACThI,QAASgI,EAAOhI,SAAW9B,EAAKwB,aAAaT,gBAExCf,EAAKiH,WAAW7E,OAAUL,EAAK+H,IAGxC7J,KAAAyB,QAAU,SAAUmK,EAAgB9J,EAAa+H,GAK/C,OAJAA,EAAMrJ,OAAAgJ,OAAAhJ,OAAAgJ,OAAA,GACDK,GAAM,CACThI,QAASgI,EAAOhI,SAAW9B,EAAKwB,aAAaT,gBAExCf,EAAKiH,WAAWvF,QAAWmK,EAAQ9J,EAAK+H,4JA9ClD7I,EAAAA,WAAUC,KAAA,CAAC,CACVC,WAAY,oDANLyK,EAAAA,kBAGA/L","sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { HttpErrorResponse, HttpHeaders, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport hash from 'object-hash';\r\n\r\nexport interface IApiConfiguration {\r\n host?: string;\r\n tokenHeader?: string;\r\n customHeaders?: () => HttpHeaders;\r\n beforeRemote?: (request: HttpRequest<any>) => void | Promise<void>;\r\n afterRemote?: (response: HttpResponse<any> | HttpErrorResponse) => void | Promise<void>;\r\n translate?: (value: string) => string;\r\n}\r\n\r\nexport const API_CONFIG = new InjectionToken<IApiConfiguration>('api.configuration');\r\n\r\nexport const TOKEN = hash({\r\n origin: location.origin,\r\n key: 'ed4a2ffc-af43-41fb-9ac9-970f43d99571'\r\n});","import { Injectable, Inject, Optional } from '@angular/core';\r\nimport { IApiConfiguration, API_CONFIG, TOKEN } from './api.model';\r\nimport { SdCacheService } from '@sd-angular/core/cache';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdTokenService {\r\n\r\n get token() {\r\n const { get } = this.cacheService.create<string>(TOKEN, {\r\n type: 'local',\r\n hours: 240\r\n });\r\n return get();\r\n }\r\n\r\n set = (token: string) => {\r\n const { set } = this.cacheService.create<string>(TOKEN, {\r\n type: 'local',\r\n hours: 240\r\n });\r\n set(token);\r\n }\r\n\r\n clear = () => {\r\n const { remove } = this.cacheService.create<string>(TOKEN, {\r\n type: 'local',\r\n hours: 240\r\n });\r\n remove();\r\n }\r\n\r\n get customHeaders() {\r\n return this.configuration?.customHeaders?.() || null;\r\n }\r\n\r\n constructor(\r\n @Inject(API_CONFIG) @Optional() private configuration: IApiConfiguration,\r\n private cacheService: SdCacheService) {\r\n }\r\n}\r\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { from, Observable, of, throwError } from 'rxjs';\r\nimport { catchError, map, switchMap } from 'rxjs/operators';\r\nimport { API_CONFIG, IApiConfiguration } from './api.model';\r\nimport { SdTokenService } from './token.service';\r\n\r\n@Injectable()\r\nexport class SdHttpInterceptor implements HttpInterceptor {\r\n constructor(\r\n @Inject(API_CONFIG) @Optional() private configuration: IApiConfiguration,\r\n private tokenService: SdTokenService\r\n ) { }\r\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n if (this.configuration?.tokenHeader && this.tokenService.token) {\r\n request = request.clone({ headers: request.headers.set(this.configuration.tokenHeader, this.tokenService.token) });\r\n }\r\n\r\n if (!request.url.startsWith('http')) {\r\n request = request.clone({\r\n url: (this.configuration?.host || location.host) + request.url\r\n });\r\n }\r\n if (request.body instanceof FormData) {\r\n request = request.clone({\r\n headers: request.headers.delete('Content-Type')\r\n });\r\n }\r\n const beforeRemote = this.configuration?.beforeRemote?.(request);\r\n if (beforeRemote instanceof Promise) {\r\n return from(beforeRemote).pipe(\r\n switchMap(() => next.handle(request)),\r\n map((event: HttpEvent<any>) => {\r\n if (event instanceof HttpResponse) {\r\n this.configuration?.afterRemote?.(event);\r\n }\r\n return event;\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.configuration?.afterRemote?.(error);\r\n return throwError(error);\r\n }));\r\n }\r\n return next.handle(request).pipe(\r\n map((event: HttpEvent<any>) => {\r\n if (event instanceof HttpResponse) {\r\n this.configuration?.afterRemote?.(event);\r\n }\r\n return event;\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.configuration?.afterRemote?.(error);\r\n return throwError(error);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { SdHttpInterceptor } from './http.interceptor';\r\n\r\n@NgModule({\r\n imports: [\r\n HttpClientModule,\r\n ],\r\n exports: [\r\n HttpClientModule\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: SdHttpInterceptor, multi: true }\r\n ],\r\n})\r\nexport class SdApiModule { }\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Injectable, Inject, Optional } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { take, timeout } from 'rxjs/operators';\r\nimport $ from 'jquery';\r\nimport { IApiConfiguration, API_CONFIG } from './api.model';\r\nimport { SdCacheService } from '@sd-angular/core/cache';\r\nimport { SdTokenService } from './token.service';\r\nimport { Subject } from 'rxjs';\r\nimport * as hash from 'object-hash';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdApiService {\r\n private uploadId = 'U118fefb1-3085-4641-8cb8-f7fe5c28f509';\r\n\r\n #timeout = 120000; // 120s\r\n\r\n #cacheDuration = 2000; // 2s\r\n #cache: {\r\n [key: string]: {\r\n createdDate: Date;\r\n subject: Subject<any>;\r\n response?: {\r\n status?: 'success' | 'error';\r\n result: any,\r\n }\r\n }\r\n } = {};\r\n\r\n private translate = (value: string): string => {\r\n return this.configuration?.translate(value) || value;\r\n }\r\n\r\n constructor(\r\n private httpClient: HttpClient,\r\n @Inject(API_CONFIG) @Optional() private configuration: IApiConfiguration,\r\n private cacheService: SdCacheService,\r\n private tokenService: SdTokenService) {\r\n }\r\n\r\n post = async <T = any>(url: string, body?: any, headers?: HttpHeaders, options?: {\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\r\n }): Promise<T> => {\r\n headers = headers || this.tokenService.customHeaders;\r\n let hashKey = uuid.v4();\r\n if (!(body instanceof FormData)) {\r\n hashKey = hash({\r\n url,\r\n headers,\r\n body\r\n });\r\n }\r\n if (!this.#cache[hashKey] || Date.addMiliseconds(this.#cache[hashKey].createdDate, this.#cacheDuration) < new Date()) {\r\n this.#cache[hashKey] = {\r\n createdDate: new Date(),\r\n subject: new Subject(),\r\n };\r\n if (options?.responseType && options.responseType !== 'json') {\r\n this.httpClient.post(encodeURI(url), body, {\r\n observe: 'body',\r\n headers,\r\n responseType: options?.responseType as any\r\n }).pipe(timeout(this.#timeout)).subscribe((res) => {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res\r\n };\r\n this.#cache[hashKey].subject.next(res);\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n } else {\r\n this.httpClient.post(encodeURI(url), body, {\r\n observe: 'response',\r\n headers\r\n }).pipe(timeout(this.#timeout)).subscribe((res) => {\r\n if (res.ok) {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.next(res.body);\r\n } else {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.error(res.body);\r\n }\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n }\r\n }\r\n if (this.#cache[hashKey].response?.status) {\r\n if (this.#cache[hashKey].response?.status === 'success') {\r\n return this.#cache[hashKey].response.result;\r\n }\r\n throw this.#cache[hashKey].response.result;\r\n }\r\n return this.#cache[hashKey].subject.pipe(take(1)).toPromise();\r\n }\r\n\r\n postCache = async <T = any>(url: string, body?: any, options?: {\r\n cacheType?: 'default' | 'session' | 'local';\r\n cacheHours?: number;\r\n headers?: HttpHeaders;\r\n }): Promise<T> => {\r\n const headers = options?.headers || this.tokenService.customHeaders;\r\n const { get, set, has } = this.cacheService.create({\r\n url,\r\n headers,\r\n body\r\n }, {\r\n type: options?.cacheType,\r\n hours: options?.cacheHours\r\n });\r\n if (!has()) {\r\n const result = await this.post(url, body, options?.headers);\r\n set(result);\r\n return result;\r\n }\r\n return get();\r\n }\r\n\r\n put<T = any>(url: string, body?: any, headers?: HttpHeaders): Promise<T> {\r\n headers = headers || this.tokenService.customHeaders;\r\n return new Promise<any>((resolve, reject) => {\r\n this.httpClient.put(encodeURI(url), body, {\r\n observe: 'response',\r\n headers\r\n }).pipe(timeout(this.#timeout)).toPromise().then(result => {\r\n if (result.ok) {\r\n resolve(result.body);\r\n } else {\r\n reject(result.body);\r\n }\r\n }).catch((httpErrorResponse: HttpErrorResponse) => {\r\n reject(httpErrorResponse);\r\n });\r\n });\r\n }\r\n\r\n #defineParams = (request: any) => {\r\n const rq = [];\r\n for (const [key, value] of Object.entries(request)) {\r\n if (value || value === 0) {\r\n rq.push(\r\n `${encodeURIComponent(key as string)}=${encodeURIComponent(\r\n value as string\r\n )}`\r\n );\r\n }\r\n }\r\n return `?${rq?.join('&')}`;\r\n }\r\n\r\n getWithParams = <T = any>(url: string, params: any, options?: {\r\n headers?: HttpHeaders,\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\r\n }): Promise<T> => {\r\n return this.get(`${url}${this.#defineParams(params)}`, options?.headers, { ...options, encodeURI: false });\r\n }\r\n\r\n getCacheWithParams = <T = any>(url: string, params: any, headers?: HttpHeaders, options?: {\r\n cacheType?: 'default' | 'session' | 'local';\r\n cacheHours?: number;\r\n headers?: HttpHeaders;\r\n }): Promise<T> => {\r\n return this.getCache(`${url}${this.#defineParams(params)}`, { ...options, encodeURI: false });\r\n }\r\n\r\n get = <T = any>(url: string, headers?: HttpHeaders, options?: {\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\r\n encodeURI?: boolean\r\n }): Promise<T> => {\r\n headers = headers || this.tokenService.customHeaders;\r\n const encodedUrl = options?.encodeURI === false ? url : encodeURI(url);\r\n // const hashKey = hash({\r\n // encodedUrl,\r\n // headers\r\n // });\r\n const hashKey = hash({\r\n encodedUrl,\r\n headers\r\n });\r\n if (!this.#cache[hashKey] || Date.addMiliseconds(this.#cache[hashKey].createdDate, this.#cacheDuration) < new Date()) {\r\n this.#cache[hashKey] = {\r\n createdDate: new Date(),\r\n subject: new Subject()\r\n };\r\n if (options?.responseType && options.responseType !== 'json') {\r\n this.httpClient.get(encodedUrl, { observe: 'body', headers, responseType: options?.responseType as any })\r\n .pipe(timeout(this.#timeout)).subscribe((res) => {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res\r\n };\r\n this.#cache[hashKey].subject.next(res);\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n } else {\r\n this.httpClient.get(encodedUrl, { observe: 'response', headers })\r\n .pipe(timeout(this.#timeout)).subscribe((res) => {\r\n if (res.ok) {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.next(res.body);\r\n } else {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.error(res.body);\r\n }\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n }\r\n }\r\n if (this.#cache[hashKey].response?.status) {\r\n if (this.#cache[hashKey].response?.status === 'success') {\r\n return this.#cache[hashKey].response.result;\r\n }\r\n throw this.#cache[hashKey].response.result;\r\n }\r\n return this.#cache[hashKey].subject.pipe(take(1)).toPromise();\r\n }\r\n\r\n getCache = async <T = any>(url: string, options?: {\r\n cacheType?: 'default' | 'session' | 'local';\r\n cacheHours?: number;\r\n headers?: HttpHeaders;\r\n encodeURI?: boolean\r\n }): Promise<T> => {\r\n const headers = options?.headers || this.tokenService.customHeaders;\r\n const encodedUrl = options?.encodeURI === false ? url : encodeURI(url);\r\n const { get, set, has } = this.cacheService.create({\r\n encodedUrl,\r\n headers\r\n }, {\r\n type: options?.cacheType,\r\n hours: options?.cacheHours\r\n });\r\n if (!has()) {\r\n const result = await this.get(encodedUrl, options?.headers);\r\n set(result);\r\n return result;\r\n }\r\n return get();\r\n }\r\n\r\n delete<T = any>(url: string, headers?: HttpHeaders): Promise<T> {\r\n headers = headers || this.tokenService.customHeaders;\r\n return new Promise<any>((resolve, reject) => {\r\n this.httpClient.delete(encodeURI(url), { observe: 'response', headers })\r\n .pipe(timeout(this.#timeout))\r\n .toPromise().then(result => {\r\n if (result.ok) {\r\n resolve(result.body);\r\n } else {\r\n reject(result.body);\r\n }\r\n }).catch((httpErrorResponse: HttpErrorResponse) => {\r\n reject(httpErrorResponse);\r\n });\r\n });\r\n }\r\n\r\n uploadSingle = (url: string, option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<any> => {\r\n return new Promise((resolve, reject) => {\r\n if ($(`#${this.uploadId}`).length) {\r\n $('body').children(`#${this.uploadId}`).remove();\r\n }\r\n $('body').append(`<input id='${this.uploadId}' style='display: none' type='file' />`);\r\n $(`#${this.uploadId}`).on('change', (evt: any) => {\r\n try {\r\n const target: DataTransfer = evt.target;\r\n const fileToUpload = target.files.item(0);\r\n this.upload(url, fileToUpload, option).then(resolve).catch(reject);\r\n } catch (error) {\r\n reject(error);\r\n }\r\n });\r\n $(`#${this.uploadId}`).trigger('click');\r\n });\r\n }\r\n\r\n upload = async (url: string, file: File, option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }) => {\r\n const lastDot = file.name.lastIndexOf('.');\r\n if (lastDot === -1) {\r\n const message = this.translate(`Invalid file extension`);\r\n throw new Error(message);\r\n }\r\n const extension = file.name.substring(lastDot + 1);\r\n if (option) {\r\n if (option.extensions?.length && !option.extensions.some(e => e.toUpperCase() === extension.toUpperCase())) {\r\n const message = `[${file.name}] ${this.translate('Uploaded file is not match extension')} ${option.extensions.join(', ')}`;\r\n throw new Error(message);\r\n }\r\n if (option.maxSizeInMb > 0 && option.maxSizeInMb * 1024 * 1024 < file.size) {\r\n const message = `[${file.name}] ${this.translate('Max file size')} ${option.maxSizeInMb} Mbs`;\r\n throw new Error(message);\r\n }\r\n if (option.validator && option.validator(file.name)) {\r\n const message = option.validator(file.name);\r\n throw new Error(message);\r\n }\r\n }\r\n const formData: FormData = new FormData();\r\n formData.append('file', file, file.name);\r\n return await this.post(url, formData);\r\n }\r\n}\r\n","import { Injectable, Inject, Optional } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { IApiConfiguration, API_CONFIG } from './api.model';\r\nimport { Observable } from 'rxjs';\r\nimport { SdTokenService } from './token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdHttpService {\r\n constructor(\r\n private httpClient: HttpClient,\r\n private tokenService: SdTokenService) {\r\n }\r\n\r\n get =<T = any>(url: string, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.get<T>(url, option);\r\n }\r\n\r\n post = <T = any>(url: string, body?: any, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.post<T>(url, body, option);\r\n }\r\n\r\n put = <T = any>(url: string, body?: any, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.put<T>(url, body, option);\r\n }\r\n\r\n delete = <T = any>(url: string, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.delete<T>(url, option);\r\n }\r\n\r\n request = <T = any>(method: string, url: string, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.request<T>(method, url, option);\r\n }\r\n}\r\n\r\ninterface ObservableOption {\r\n body?: any;\r\n headers?: HttpHeaders | {\r\n [header: string]: string | string[];\r\n };\r\n observe?: 'body';\r\n params?: HttpParams | {\r\n [param: string]: string | string[];\r\n };\r\n reportProgress?: boolean;\r\n responseType?: 'json';\r\n withCredentials?: boolean;\r\n}"]}
|
|
1
|
+
{"version":3,"sources":["../../../../projects/sd-core/api/src/lib/api.model.ts","../../../../projects/sd-core/api/src/lib/token.service.ts","../../../../projects/sd-core/api/src/lib/http.interceptor.ts","../../../../projects/sd-core/api/src/lib/api.module.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/api/src/lib/api.service.ts","../../../../projects/sd-core/api/src/lib/http.service.ts"],"names":["API_CONFIG","InjectionToken","TOKEN","hash","origin","location","key","SdTokenService","configuration","cacheService","_this","this","set","token","create","type","hours","clear","remove","Object","defineProperty","prototype","get","_b","_a","customHeaders","call","Injectable","args","providedIn","Inject","Optional","SdCacheService","SdHttpInterceptor","tokenService","intercept","request","next","tokenHeader","clone","headers","url","startsWith","host","body","FormData","delete","beforeRemote","_d","_c","Promise","from","pipe","switchMap","handle","map","event","HttpResponse","afterRemote","catchError","error","throwError","NgModule","imports","HttpClientModule","exports","providers","provide","HTTP_INTERCEPTORS","useClass","multi","__awaiter","thisArg","_arguments","P","generator","resolve","reject","fulfilled","value","step","e","rejected","result","done","then","apply","__generator","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","pop","length","push","__values","o","s","m","i","__read","r","ar","__classPrivateFieldGet","receiver","state","kind","has","SdApiService","httpClient","uploadId","_timeout","_cacheDuration","_cache","translate","post","options","hashKey","uuid.v4","Date","addMiliseconds","createdDate","subject","Subject","responseType","encodeURI","observe","timeout","subscribe","res","response","status","err","ok","take","toPromise","postCache","cacheType","cacheHours","_e","_defineParams","rq","entries","_f","_g","encodeURIComponent","join","getWithParams","params","assign","getCacheWithParams","getCache","encodedUrl","uploadSingle","option","$","children","append","on","evt","fileToUpload","target","files","item","upload","catch","trigger","file","lastDot","name","lastIndexOf","message","Error","extension","substring","extensions","some","toUpperCase","maxSizeInMb","size","validator","formData","put","httpErrorResponse","HttpClient","method"],"mappings":"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","sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { HttpErrorResponse, HttpHeaders, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport hash from 'object-hash';\r\n\r\nexport interface IApiConfiguration {\r\n host?: string;\r\n tokenHeader?: string;\r\n customHeaders?: () => HttpHeaders;\r\n beforeRemote?: (request: HttpRequest<any>) => void | Promise<void>;\r\n afterRemote?: (response: HttpResponse<any> | HttpErrorResponse) => void | Promise<void>;\r\n translate?: (value: string) => string;\r\n}\r\n\r\nexport const API_CONFIG = new InjectionToken<IApiConfiguration>('api.configuration');\r\n\r\nexport const TOKEN = hash({\r\n origin: location.origin,\r\n key: 'ed4a2ffc-af43-41fb-9ac9-970f43d99571'\r\n});","import { Injectable, Inject, Optional } from '@angular/core';\r\nimport { IApiConfiguration, API_CONFIG, TOKEN } from './api.model';\r\nimport { SdCacheService } from '@sd-angular/core/cache';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdTokenService {\r\n\r\n get token() {\r\n const { get } = this.cacheService.create<string>(TOKEN, {\r\n type: 'local',\r\n hours: 240\r\n });\r\n return get();\r\n }\r\n\r\n set = (token: string) => {\r\n const { set } = this.cacheService.create<string>(TOKEN, {\r\n type: 'local',\r\n hours: 240\r\n });\r\n set(token);\r\n }\r\n\r\n clear = () => {\r\n const { remove } = this.cacheService.create<string>(TOKEN, {\r\n type: 'local',\r\n hours: 240\r\n });\r\n remove();\r\n }\r\n\r\n get customHeaders() {\r\n return this.configuration?.customHeaders?.() || null;\r\n }\r\n\r\n constructor(\r\n @Inject(API_CONFIG) @Optional() private configuration: IApiConfiguration,\r\n private cacheService: SdCacheService) {\r\n }\r\n}\r\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport { Inject, Injectable, Optional } from '@angular/core';\r\nimport { from, Observable, of, throwError } from 'rxjs';\r\nimport { catchError, map, switchMap } from 'rxjs/operators';\r\nimport { API_CONFIG, IApiConfiguration } from './api.model';\r\nimport { SdTokenService } from './token.service';\r\n\r\n@Injectable()\r\nexport class SdHttpInterceptor implements HttpInterceptor {\r\n constructor(\r\n @Inject(API_CONFIG) @Optional() private configuration: IApiConfiguration,\r\n private tokenService: SdTokenService\r\n ) { }\r\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n if (this.configuration?.tokenHeader && this.tokenService.token) {\r\n request = request.clone({ headers: request.headers.set(this.configuration.tokenHeader, this.tokenService.token) });\r\n }\r\n\r\n if (!request.url.startsWith('http')) {\r\n request = request.clone({\r\n url: (this.configuration?.host || location.host) + request.url\r\n });\r\n }\r\n if (request.body instanceof FormData) {\r\n request = request.clone({\r\n headers: request.headers.delete('Content-Type')\r\n });\r\n }\r\n const beforeRemote = this.configuration?.beforeRemote?.(request);\r\n if (beforeRemote instanceof Promise) {\r\n return from(beforeRemote).pipe(\r\n switchMap(() => next.handle(request)),\r\n map((event: HttpEvent<any>) => {\r\n if (event instanceof HttpResponse) {\r\n this.configuration?.afterRemote?.(event);\r\n }\r\n return event;\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.configuration?.afterRemote?.(error);\r\n return throwError(error);\r\n }));\r\n }\r\n return next.handle(request).pipe(\r\n map((event: HttpEvent<any>) => {\r\n if (event instanceof HttpResponse) {\r\n this.configuration?.afterRemote?.(event);\r\n }\r\n return event;\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.configuration?.afterRemote?.(error);\r\n return throwError(error);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { SdHttpInterceptor } from './http.interceptor';\r\n\r\n@NgModule({\r\n imports: [\r\n HttpClientModule,\r\n ],\r\n exports: [\r\n HttpClientModule\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: SdHttpInterceptor, multi: true }\r\n ],\r\n})\r\nexport class SdApiModule { }\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Injectable, Inject, Optional } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { take, timeout } from 'rxjs/operators';\r\nimport $ from 'jquery';\r\nimport { IApiConfiguration, API_CONFIG } from './api.model';\r\nimport { SdCacheService } from '@sd-angular/core/cache';\r\nimport { SdTokenService } from './token.service';\r\nimport { Subject } from 'rxjs';\r\nimport hash from 'object-hash';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdApiService {\r\n private uploadId = 'U118fefb1-3085-4641-8cb8-f7fe5c28f509';\r\n\r\n #timeout = 120000; // 120s\r\n\r\n #cacheDuration = 2000; // 2s\r\n #cache: {\r\n [key: string]: {\r\n createdDate: Date;\r\n subject: Subject<any>;\r\n response?: {\r\n status?: 'success' | 'error';\r\n result: any,\r\n }\r\n }\r\n } = {};\r\n\r\n private translate = (value: string): string => {\r\n return this.configuration?.translate(value) || value;\r\n }\r\n\r\n constructor(\r\n private httpClient: HttpClient,\r\n @Inject(API_CONFIG) @Optional() private configuration: IApiConfiguration,\r\n private cacheService: SdCacheService,\r\n private tokenService: SdTokenService) {\r\n }\r\n\r\n post = async <T = any>(url: string, body?: any, headers?: HttpHeaders, options?: {\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\r\n }): Promise<T> => {\r\n headers = headers || this.tokenService.customHeaders;\r\n let hashKey = uuid.v4();\r\n if (!(body instanceof FormData)) {\r\n hashKey = hash({\r\n url,\r\n headers,\r\n body\r\n });\r\n }\r\n if (!this.#cache[hashKey] || Date.addMiliseconds(this.#cache[hashKey].createdDate, this.#cacheDuration) < new Date()) {\r\n this.#cache[hashKey] = {\r\n createdDate: new Date(),\r\n subject: new Subject(),\r\n };\r\n if (options?.responseType && options.responseType !== 'json') {\r\n this.httpClient.post(encodeURI(url), body, {\r\n observe: 'body',\r\n headers,\r\n responseType: options?.responseType as any\r\n }).pipe(timeout(this.#timeout)).subscribe((res) => {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res\r\n };\r\n this.#cache[hashKey].subject.next(res);\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n } else {\r\n this.httpClient.post(encodeURI(url), body, {\r\n observe: 'response',\r\n headers\r\n }).pipe(timeout(this.#timeout)).subscribe((res) => {\r\n if (res.ok) {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.next(res.body);\r\n } else {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.error(res.body);\r\n }\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n }\r\n }\r\n if (this.#cache[hashKey].response?.status) {\r\n if (this.#cache[hashKey].response?.status === 'success') {\r\n return this.#cache[hashKey].response.result;\r\n }\r\n throw this.#cache[hashKey].response.result;\r\n }\r\n return this.#cache[hashKey].subject.pipe(take(1)).toPromise();\r\n }\r\n\r\n postCache = async <T = any>(url: string, body?: any, options?: {\r\n cacheType?: 'default' | 'session' | 'local';\r\n cacheHours?: number;\r\n headers?: HttpHeaders;\r\n }): Promise<T> => {\r\n const headers = options?.headers || this.tokenService.customHeaders;\r\n const { get, set, has } = this.cacheService.create({\r\n url,\r\n headers,\r\n body\r\n }, {\r\n type: options?.cacheType,\r\n hours: options?.cacheHours\r\n });\r\n if (!has()) {\r\n const result = await this.post(url, body, options?.headers);\r\n set(result);\r\n return result;\r\n }\r\n return get();\r\n }\r\n\r\n put<T = any>(url: string, body?: any, headers?: HttpHeaders): Promise<T> {\r\n headers = headers || this.tokenService.customHeaders;\r\n return new Promise<any>((resolve, reject) => {\r\n this.httpClient.put(encodeURI(url), body, {\r\n observe: 'response',\r\n headers\r\n }).pipe(timeout(this.#timeout)).toPromise().then(result => {\r\n if (result.ok) {\r\n resolve(result.body);\r\n } else {\r\n reject(result.body);\r\n }\r\n }).catch((httpErrorResponse: HttpErrorResponse) => {\r\n reject(httpErrorResponse);\r\n });\r\n });\r\n }\r\n\r\n #defineParams = (request: any) => {\r\n const rq = [];\r\n for (const [key, value] of Object.entries(request)) {\r\n if (value || value === 0) {\r\n rq.push(\r\n `${encodeURIComponent(key as string)}=${encodeURIComponent(\r\n value as string\r\n )}`\r\n );\r\n }\r\n }\r\n return `?${rq?.join('&')}`;\r\n }\r\n\r\n getWithParams = <T = any>(url: string, params: any, options?: {\r\n headers?: HttpHeaders,\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\r\n }): Promise<T> => {\r\n return this.get(`${url}${this.#defineParams(params)}`, options?.headers, { ...options, encodeURI: false });\r\n }\r\n\r\n getCacheWithParams = <T = any>(url: string, params: any, headers?: HttpHeaders, options?: {\r\n cacheType?: 'default' | 'session' | 'local';\r\n cacheHours?: number;\r\n headers?: HttpHeaders;\r\n }): Promise<T> => {\r\n return this.getCache(`${url}${this.#defineParams(params)}`, { ...options, encodeURI: false });\r\n }\r\n\r\n get = <T = any>(url: string, headers?: HttpHeaders, options?: {\r\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\r\n encodeURI?: boolean\r\n }): Promise<T> => {\r\n headers = headers || this.tokenService.customHeaders;\r\n const encodedUrl = options?.encodeURI === false ? url : encodeURI(url);\r\n // const hashKey = hash({\r\n // encodedUrl,\r\n // headers\r\n // });\r\n const hashKey = hash({\r\n encodedUrl,\r\n headers\r\n });\r\n if (!this.#cache[hashKey] || Date.addMiliseconds(this.#cache[hashKey].createdDate, this.#cacheDuration) < new Date()) {\r\n this.#cache[hashKey] = {\r\n createdDate: new Date(),\r\n subject: new Subject()\r\n };\r\n if (options?.responseType && options.responseType !== 'json') {\r\n this.httpClient.get(encodedUrl, { observe: 'body', headers, responseType: options?.responseType as any })\r\n .pipe(timeout(this.#timeout)).subscribe((res) => {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res\r\n };\r\n this.#cache[hashKey].subject.next(res);\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n } else {\r\n this.httpClient.get(encodedUrl, { observe: 'response', headers })\r\n .pipe(timeout(this.#timeout)).subscribe((res) => {\r\n if (res.ok) {\r\n this.#cache[hashKey].response = {\r\n status: 'success',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.next(res.body);\r\n } else {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: res.body\r\n };\r\n this.#cache[hashKey].subject.error(res.body);\r\n }\r\n }, err => {\r\n this.#cache[hashKey].response = {\r\n status: 'error',\r\n result: err\r\n };\r\n this.#cache[hashKey].subject.error(err);\r\n });\r\n }\r\n }\r\n if (this.#cache[hashKey].response?.status) {\r\n if (this.#cache[hashKey].response?.status === 'success') {\r\n return this.#cache[hashKey].response.result;\r\n }\r\n throw this.#cache[hashKey].response.result;\r\n }\r\n return this.#cache[hashKey].subject.pipe(take(1)).toPromise();\r\n }\r\n\r\n getCache = async <T = any>(url: string, options?: {\r\n cacheType?: 'default' | 'session' | 'local';\r\n cacheHours?: number;\r\n headers?: HttpHeaders;\r\n encodeURI?: boolean\r\n }): Promise<T> => {\r\n const headers = options?.headers || this.tokenService.customHeaders;\r\n const encodedUrl = options?.encodeURI === false ? url : encodeURI(url);\r\n const { get, set, has } = this.cacheService.create({\r\n encodedUrl,\r\n headers\r\n }, {\r\n type: options?.cacheType,\r\n hours: options?.cacheHours\r\n });\r\n if (!has()) {\r\n const result = await this.get(encodedUrl, options?.headers);\r\n set(result);\r\n return result;\r\n }\r\n return get();\r\n }\r\n\r\n delete<T = any>(url: string, headers?: HttpHeaders): Promise<T> {\r\n headers = headers || this.tokenService.customHeaders;\r\n return new Promise<any>((resolve, reject) => {\r\n this.httpClient.delete(encodeURI(url), { observe: 'response', headers })\r\n .pipe(timeout(this.#timeout))\r\n .toPromise().then(result => {\r\n if (result.ok) {\r\n resolve(result.body);\r\n } else {\r\n reject(result.body);\r\n }\r\n }).catch((httpErrorResponse: HttpErrorResponse) => {\r\n reject(httpErrorResponse);\r\n });\r\n });\r\n }\r\n\r\n uploadSingle = (url: string, option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<any> => {\r\n return new Promise((resolve, reject) => {\r\n if ($(`#${this.uploadId}`).length) {\r\n $('body').children(`#${this.uploadId}`).remove();\r\n }\r\n $('body').append(`<input id='${this.uploadId}' style='display: none' type='file' />`);\r\n $(`#${this.uploadId}`).on('change', (evt: any) => {\r\n try {\r\n const target: DataTransfer = evt.target;\r\n const fileToUpload = target.files.item(0);\r\n this.upload(url, fileToUpload, option).then(resolve).catch(reject);\r\n } catch (error) {\r\n reject(error);\r\n }\r\n });\r\n $(`#${this.uploadId}`).trigger('click');\r\n });\r\n }\r\n\r\n upload = async (url: string, file: File, option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }) => {\r\n const lastDot = file.name.lastIndexOf('.');\r\n if (lastDot === -1) {\r\n const message = this.translate(`Invalid file extension`);\r\n throw new Error(message);\r\n }\r\n const extension = file.name.substring(lastDot + 1);\r\n if (option) {\r\n if (option.extensions?.length && !option.extensions.some(e => e.toUpperCase() === extension.toUpperCase())) {\r\n const message = `[${file.name}] ${this.translate('Uploaded file is not match extension')} ${option.extensions.join(', ')}`;\r\n throw new Error(message);\r\n }\r\n if (option.maxSizeInMb > 0 && option.maxSizeInMb * 1024 * 1024 < file.size) {\r\n const message = `[${file.name}] ${this.translate('Max file size')} ${option.maxSizeInMb} Mbs`;\r\n throw new Error(message);\r\n }\r\n if (option.validator && option.validator(file.name)) {\r\n const message = option.validator(file.name);\r\n throw new Error(message);\r\n }\r\n }\r\n const formData: FormData = new FormData();\r\n formData.append('file', file, file.name);\r\n return await this.post(url, formData);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { SdTokenService } from './token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdHttpService {\r\n constructor(\r\n private httpClient: HttpClient,\r\n private tokenService: SdTokenService) {\r\n }\r\n\r\n get =<T = any>(url: string, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.get<T>(url, option);\r\n }\r\n\r\n post = <T = any>(url: string, body?: any, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.post<T>(url, body, option);\r\n }\r\n\r\n put = <T = any>(url: string, body?: any, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.put<T>(url, body, option);\r\n }\r\n\r\n delete = <T = any>(url: string, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.delete<T>(url, option);\r\n }\r\n\r\n request = <T = any>(method: string, url: string, option?: ObservableOption): Observable<T> => {\r\n option = {\r\n ...option,\r\n headers: option.headers || this.tokenService.customHeaders\r\n }\r\n return this.httpClient.request<T>(method, url, option);\r\n }\r\n}\r\n\r\ninterface ObservableOption {\r\n body?: any;\r\n headers?: HttpHeaders | {\r\n [header: string]: string | string[];\r\n };\r\n observe?: 'body';\r\n params?: HttpParams | {\r\n [param: string]: string | string[];\r\n };\r\n reportProgress?: boolean;\r\n responseType?: 'json';\r\n withCredentials?: boolean;\r\n}"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@sd-angular/core/common'), require('@angular/core'), require('@angular/common'), require('chart.js'), require('jquery'), require('uuid')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define('@sd-angular/core/chart', ['exports', '@sd-angular/core/common', '@angular/core', '@angular/common', 'chart.js', 'jquery', 'uuid'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = global['sd-angular'].core || {}, global['sd-angular'].core.chart = {}), global['sd-angular'].core.common, global.ng.core, global.ng.common, global.
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = global['sd-angular'].core || {}, global['sd-angular'].core.chart = {}), global['sd-angular'].core.common, global.ng.core, global.ng.common, global.chart.js, global.jquery, global.uuid));
|
|
5
5
|
}(this, (function (exports, common$1, core, common, Chart, $, uuid) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@sd-angular/core/common"),require("@angular/core"),require("@angular/common"),require("chart.js"),require("jquery"),require("uuid")):"function"==typeof define&&define.amd?define("@sd-angular/core/chart",["exports","@sd-angular/core/common","@angular/core","@angular/common","chart.js","jquery","uuid"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core.chart={}),e["sd-angular"].core.common,e.ng.core,e.ng.common,e.Chart,e.$,e.uuid)}(this,(function(e,t,a,i,o,r,l){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var i=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,i.get?i:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,Object.freeze(t)}var d=s(o),u=n(r);function c(e,t,a,i){return new(a||(a=Promise))((function(o,r){function l(e){try{s(i.next(e))}catch(e){r(e)}}function n(e){try{s(i.throw(e))}catch(e){r(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof a?t:new a((function(e){e(t)}))).then(l,n)}s((i=i.apply(e,t||[])).next())}))}function b(e,t){var a,i,o,r,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:n(0),throw:n(1),return:n(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function n(r){return function(n){return function(r){if(a)throw new TypeError("Generator is already executing.");for(;l;)try{if(a=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return l.label++,{value:r[1],done:!1};case 5:l.label++,i=r[1],r=[0];continue;case 7:r=l.ops.pop(),l.trys.pop();continue;default:if(!(o=l.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){l=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){l.label=r[1];break}if(6===r[0]&&l.label<o[1]){l.label=o[1],o=r;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(r);break}o[2]&&l.ops.pop(),l.trys.pop();continue}r=t.call(e,l)}catch(e){r=[6,e],i=0}finally{a=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,n])}}}Object.create;Object.create;var v=new a.InjectionToken("chart.configuration"),p=function(){function e(e,t){var a=this;this.ref=e,this.chartConfiguration=t,this.initialized=!1,this.isLoading=!1,this.visible=!0,this.height="300px",this.loadingStart=function(){a.isLoading=!0}}return Object.defineProperty(e.prototype,"chartOption",{set:function(e){this.pChartOption=e,this.initialized&&this.renderChart()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){},e.prototype.ngAfterViewInit=function(){this.renderChart(!0),this.initialized=!0,this.ref.detectChanges()},e.prototype.renderChart=function(e){var t,a;return c(this,void 0,void 0,(function(){var i;return b(this,(function(o){switch(o.label){case 0:return this.height=(null===(t=this.pChartOption)||void 0===t?void 0:t.height)||"300px",e?[3,2]:(this.visible=!1,[4,new Promise((function(e){return setTimeout(e,200)}))]);case 1:o.sent(),this.visible=!0,o.label=2;case 2:return[4,new Promise((function(e){return setTimeout(e,200)}))];case 3:if(o.sent(),null===(a=this.chartRef)||void 0===a?void 0:a.nativeElement)switch(i=this.chartRef.nativeElement,this.ctx=i.getContext("2d"),this.pChartOption.type){case"pie":this.renderPieChart(this.pChartOption);break;case"bar":this.renderBarChart(this.pChartOption);break;case"horizontalBar":this.renderHorizontalBarChart(this.pChartOption);break;case"line":this.renderLineChart(this.pChartOption);break;case"stackArea":this.renderStackAreaChart(this.pChartOption);break;case"barline":this.renderBarLineChart(this.pChartOption)}return[2]}}))}))},e.prototype.renderPieChart=function(e){var t,a,i,o=this,r={type:"pie",options:{responsive:!0,title:{display:!0,text:e.title},legend:{display:!e.hideLegend},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||(l?"["+l+"] ":"")+n+" : "+Number.toVNCurrency(s)}}}},data:{labels:(null===(t=e.datasets)||void 0===t?void 0:t.map((function(e){return e.label})))||[],datasets:[{data:(null===(a=e.datasets)||void 0===a?void 0:a.map((function(e){return e.value})))||[],backgroundColor:(null===(i=e.datasets)||void 0===i?void 0:i.map((function(e,t){var a,i,r;return e.backgroundColor||(null===(r=null===(i=null===(a=o.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===i?void 0:i[t])||void 0===r?void 0:r.backgroundColor)||o.dynamicColor})))||[]}]}};"ShowAll"===e.hover&&(r.options.tooltips=Object.assign(Object.assign({},r.options.tooltips),{mode:"index",intersect:!1}),r.options.hover=Object.assign(Object.assign({},r.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,r),this.isLoading=!1},e.prototype.renderBarChart=function(e){var t,a,i=this,o=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var r=e.labels.length*e.datasets.length*o;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+r+"px)")}var l={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"bar",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,o,r,l,n,s,d=i.dynamicColor;return{label:e.label,fill:e.backgroundColor||(null===(r=null===(o=null===(a=i.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||d,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=i.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||d,data:e.data,stack:e.stack}}))}};"ShowAll"===e.hover&&(l.options.tooltips=Object.assign(Object.assign({},l.options.tooltips),{mode:"index",intersect:!1}),l.options.hover=Object.assign(Object.assign({},l.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,l),this.isLoading=!1},e.prototype.renderHorizontalBarChart=function(e){var t,a=this,i={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{beginAtZero:null===(t=e.beginAtZero)||void 0===t||t,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"horizontalBar",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var i,o,r,l,n,s,d=a.dynamicColor;return{label:e.label,fill:e.backgroundColor||(null===(r=null===(o=null===(i=a.chartConfiguration)||void 0===i?void 0:i.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||d,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=a.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||d,data:e.data,stack:e.stack}}))}};"ShowAll"===e.hover&&(i.options.tooltips=Object.assign(Object.assign({},i.options.tooltips),{mode:"index",intersect:!1}),i.options.hover=Object.assign(Object.assign({},i.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,i),this.isLoading=!1},e.prototype.renderLineChart=function(e){var t,a,i=this,o=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var r=e.labels.length*o;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+r+"px)")}var l={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"line",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,o,r,l,n,s,d,u,c,b=i.dynamicColor;return{label:e.label,fill:e.backgroundColor||(null===(r=null===(o=null===(a=i.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||b,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=i.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||b,borderColor:e.borderColor||(null===(c=null===(u=null===(d=i.chartConfiguration)||void 0===d?void 0:d.defaultColors)||void 0===u?void 0:u[t])||void 0===c?void 0:c.borderColor)||b,data:e.data,lineTension:0}}))}};"ShowAll"===e.hover&&(l.options.tooltips=Object.assign(Object.assign({},l.options.tooltips),{mode:"index",intersect:!1}),l.options.hover=Object.assign(Object.assign({},l.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,l),this.isLoading=!1},e.prototype.renderStackAreaChart=function(e){var t,a,i=this,o=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var r=e.labels.length*o;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+r+"px)")}var l={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},stacked:!0,scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"line",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,o,r,l,n,s,d=i.dynamicColor;return{label:e.label,backgroundColor:e.backgroundColor||(null===(r=null===(o=null===(a=i.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||d,borderColor:e.borderColor||(null===(s=null===(n=null===(l=i.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.borderColor)||d,data:e.data,lineTension:0}}))}};"ShowAll"===e.hover&&(l.options.tooltips=Object.assign(Object.assign({},l.options.tooltips),{mode:"index",intersect:!1}),l.options.hover=Object.assign(Object.assign({},l.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,l),this.isLoading=!1},e.prototype.renderBarLineChart=function(e){var t,a,i,o=this,r=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var n=e.datasets.filter((function(e){return"bar"===e.type})).length;if(n<=1){var s=e.labels.length*r;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+s+"px)")}else{s=e.labels.length*n*r;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+s+"px)")}}var c="I"+l.v4(),b="I"+l.v4(),v=[{type:"linear",display:!0,position:"left",id:c,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,suggestedMin:0,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}];e.datasets.some((function(e){return"right"===e.yAlign}))&&v.push({type:"linear",display:!0,position:"right",id:b,ticks:{beginAtZero:null===(i=e.beginAtZero)||void 0===i||i,suggestedMin:0,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yRightLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yRightTitle,labelString:e.yRightTitle||""}});var p={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},title:{display:!0,text:e.title},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:v},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||(l?"["+l+"] ":"")+" "+n+" : "+Number.toVNCurrency(s)}}}},data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,i,r,l,n,s,d,u,v,p=o.dynamicColor;return{type:e.type,label:e.label,fill:e.backgroundColor||(null===(r=null===(i=null===(a=o.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===i?void 0:i[t])||void 0===r?void 0:r.backgroundColor)||p,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=o.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||p,borderColor:e.borderColor||(null===(v=null===(u=null===(d=o.chartConfiguration)||void 0===d?void 0:d.defaultColors)||void 0===u?void 0:u[t])||void 0===v?void 0:v.borderColor)||p,data:e.data,yAxisID:"right"===e.yAlign?b:c,lineTension:0}}))}};"ShowAll"===e.hover&&(p.options.tooltips=Object.assign(Object.assign({},p.options.tooltips),{mode:"index",intersect:!1}),p.options.hover=Object.assign(Object.assign({},p.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,p),this.isLoading=!1},Object.defineProperty(e.prototype,"dynamicColor",{get:function(){return"rgb("+Math.floor(255*Math.random())+","+Math.floor(255*Math.random())+","+Math.floor(255*Math.random())+")"},enumerable:!1,configurable:!0}),e}();p.decorators=[{type:a.Component,args:[{selector:"sd-chart",template:'<div *ngIf="visible" class="c-chart-wrapper mt-2" >\r\n <div class="c-chart-area-wrapper" #chartWrapper>\r\n <div class="c-chart-area-wrapper-extend" [ngStyle]="{\'height\':height}" #chartAreaWrapperExtend [ngClass]="{\'c-loading\': isLoading}">\r\n <i [ngClass]="{\'d-none\': !isLoading}" class="fa fa-5x fa-spinner fa-pulse c-loading-icon"></i>\r\n <canvas #chart [ngClass]="{\'c-loading-margin\': isLoading}"></canvas>\r\n </div>\r\n </div>\r\n</div>\r\n',styles:[".c-container{background:#f5f6f7;border-radius:5px}.c-flex{border-radius:8px;display:flex;margin:15px}.c-chart-container{background:#fff;border-radius:5px;border-radius:8px;box-shadow:0 0 13px 0 rgba(82,63,105,.1);margin:15px;padding:15px}.c-btn-dashboard{align-self:center;height:60%;vertical-align:middle}.c-chart-wrapper{position:relative}.c-chart-wrapper>canvas{left:0;pointer-events:none;position:absolute;top:0}.c-chart-area-wrapper{overflow-x:auto;position:relative;width:100%}.c-chart-area-wrapper-extend{position:relative}.c-loading{opacity:.4}.c-loading-icon{left:calc(50% - 2.5rem);position:-webkit-sticky;position:sticky;top:calc(50% - 2.5rem)}.c-loading-margin{margin-top:-6rem}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:50px}::-webkit-scrollbar-thumb:hover{background:#555}"]}]}],p.ctorParameters=function(){return[{type:a.ChangeDetectorRef},{type:void 0,decorators:[{type:a.Optional},{type:a.Inject,args:[v]}]}]},p.propDecorators={chartOption:[{type:a.Input}],chartRef:[{type:a.ViewChild,args:["chart"]}],chartWrapperRef:[{type:a.ViewChild,args:["chartWrapper"]}],chartAxisRef:[{type:a.ViewChild,args:["chartAxis"]}],chartAreaWrapperExtendRef:[{type:a.ViewChild,args:["chartAreaWrapperExtend"]}]};var h=function(){};h.decorators=[{type:a.NgModule,args:[{imports:[i.CommonModule],declarations:[p],exports:[p],providers:[]}]}],e.CHART_CONFIG=v,e.ChartColors={Red:"rgb(255, 99, 132)",Orange:"rgb(255, 159, 64)",Yellow:"rgb(255, 205, 86)",Green:"rgb(75, 192, 192)",Blue:"rgb(54, 162, 235)",Purple:"rgb(153, 102, 255)",Grey:"rgb(201, 203, 207)",Purple700:"#2E224C",Purple600:"#453372",Purple500:"#574191",Purple400:"#7356BF",Purple300:"#957FCE",Purple200:"#C1B4E2",Purple100:"#E3DDF2",Purple50:"#F3F1F9",Blue700:"#0F2C60",Blue600:"#174291",Blue500:"#1D53B7",Blue400:"#276EF1",Blue300:"#5A90F4",Blue200:"#9FBFF8",Blue100:"#D4E2FC",Blue50:"#EDF3FD",Green700:"#0D4020",Green600:"#156A36",Green500:"#09863D",Green400:"#21A453",Green300:"#43BF75",Green200:"#9EE2B8",Green100:"#CFF3DD",Green50:"#F0FAF3",Yellow700:"#664C1A",Yellow600:"#997328",Yellow500:"#C19132",Yellow400:"#FFC043",Yellow300:"#FFCF70",Yellow200:"#FFE3AC",Yellow100:"#FFF2D9",Yellow50:"#FFF9EF",Orange700:"#5F2C14",Orange600:"#8E421E",Orange500:"#B45326",Orange400:"#ED6E33",Orange300:"#F19063",Orange200:"#F7BFA5",Orange100:"#FBE2D6",Orange50:"#FDF3EE",Red700:"#541A14",Red600:"#7F281E",Red500:"#A13226",Red400:"#D44333",Red300:"#DE7063",Red200:"#ECACA5",Red100:"#F6D9D6",Red50:"#FBEFEE",Brown700:"#3D281E",Brown600:"#5B3C2D",Brown500:"#744C39",Brown400:"#99644C",Brown300:"#B18976",Brown200:"#D2BAB0",Brown100:"#EBE0DB",Brown50:"#F6F2F0",Gray900:"#141414",Gray800:"#1F1F1F",Gray700:"#333333",Gray600:"#545454",Gray500:"#757575",Gray400:"#AFAFAF",Gray300:"#CBCBCB",Gray200:"#E2E2E2",Gray100:"#EEEEEE",Gray50:"#F6F6F6",Platinum700:"#394145",Platinum600:"#556268",Platinum500:"#6C7C83",Platinum400:"#8EA3AD",Platinum300:"#A1BDCA",Platinum200:"#CCDFE5",Platinum100:"#EBF5F7",Platinum50:"#F4FAFB",EatsGreen400:"#21A453",FreightBlue400:"#21A453",JumpRed400:"#FF0A2D",Black:"#000000",White:"#FFFFFF"},e.SdChart=p,e.SdChartModule=h,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@sd-angular/core/common"),require("@angular/core"),require("@angular/common"),require("chart.js"),require("jquery"),require("uuid")):"function"==typeof define&&define.amd?define("@sd-angular/core/chart",["exports","@sd-angular/core/common","@angular/core","@angular/common","chart.js","jquery","uuid"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core.chart={}),e["sd-angular"].core.common,e.ng.core,e.ng.common,e.chart.js,e.jquery,e.uuid)}(this,(function(e,t,a,i,o,r,l){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var i=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,i.get?i:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,Object.freeze(t)}var d=s(o),u=n(r);function c(e,t,a,i){return new(a||(a=Promise))((function(o,r){function l(e){try{s(i.next(e))}catch(e){r(e)}}function n(e){try{s(i.throw(e))}catch(e){r(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof a?t:new a((function(e){e(t)}))).then(l,n)}s((i=i.apply(e,t||[])).next())}))}function b(e,t){var a,i,o,r,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:n(0),throw:n(1),return:n(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function n(r){return function(n){return function(r){if(a)throw new TypeError("Generator is already executing.");for(;l;)try{if(a=1,i&&(o=2&r[0]?i.return:r[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,r[1])).done)return o;switch(i=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return l.label++,{value:r[1],done:!1};case 5:l.label++,i=r[1],r=[0];continue;case 7:r=l.ops.pop(),l.trys.pop();continue;default:if(!(o=l.trys,(o=o.length>0&&o[o.length-1])||6!==r[0]&&2!==r[0])){l=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]<o[3])){l.label=r[1];break}if(6===r[0]&&l.label<o[1]){l.label=o[1],o=r;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(r);break}o[2]&&l.ops.pop(),l.trys.pop();continue}r=t.call(e,l)}catch(e){r=[6,e],i=0}finally{a=o=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,n])}}}Object.create;Object.create;var v=new a.InjectionToken("chart.configuration"),p=function(){function e(e,t){var a=this;this.ref=e,this.chartConfiguration=t,this.initialized=!1,this.isLoading=!1,this.visible=!0,this.height="300px",this.loadingStart=function(){a.isLoading=!0}}return Object.defineProperty(e.prototype,"chartOption",{set:function(e){this.pChartOption=e,this.initialized&&this.renderChart()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){},e.prototype.ngAfterViewInit=function(){this.renderChart(!0),this.initialized=!0,this.ref.detectChanges()},e.prototype.renderChart=function(e){var t,a;return c(this,void 0,void 0,(function(){var i;return b(this,(function(o){switch(o.label){case 0:return this.height=(null===(t=this.pChartOption)||void 0===t?void 0:t.height)||"300px",e?[3,2]:(this.visible=!1,[4,new Promise((function(e){return setTimeout(e,200)}))]);case 1:o.sent(),this.visible=!0,o.label=2;case 2:return[4,new Promise((function(e){return setTimeout(e,200)}))];case 3:if(o.sent(),null===(a=this.chartRef)||void 0===a?void 0:a.nativeElement)switch(i=this.chartRef.nativeElement,this.ctx=i.getContext("2d"),this.pChartOption.type){case"pie":this.renderPieChart(this.pChartOption);break;case"bar":this.renderBarChart(this.pChartOption);break;case"horizontalBar":this.renderHorizontalBarChart(this.pChartOption);break;case"line":this.renderLineChart(this.pChartOption);break;case"stackArea":this.renderStackAreaChart(this.pChartOption);break;case"barline":this.renderBarLineChart(this.pChartOption)}return[2]}}))}))},e.prototype.renderPieChart=function(e){var t,a,i,o=this,r={type:"pie",options:{responsive:!0,title:{display:!0,text:e.title},legend:{display:!e.hideLegend},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||(l?"["+l+"] ":"")+n+" : "+Number.toVNCurrency(s)}}}},data:{labels:(null===(t=e.datasets)||void 0===t?void 0:t.map((function(e){return e.label})))||[],datasets:[{data:(null===(a=e.datasets)||void 0===a?void 0:a.map((function(e){return e.value})))||[],backgroundColor:(null===(i=e.datasets)||void 0===i?void 0:i.map((function(e,t){var a,i,r;return e.backgroundColor||(null===(r=null===(i=null===(a=o.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===i?void 0:i[t])||void 0===r?void 0:r.backgroundColor)||o.dynamicColor})))||[]}]}};"ShowAll"===e.hover&&(r.options.tooltips=Object.assign(Object.assign({},r.options.tooltips),{mode:"index",intersect:!1}),r.options.hover=Object.assign(Object.assign({},r.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,r),this.isLoading=!1},e.prototype.renderBarChart=function(e){var t,a,i=this,o=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var r=e.labels.length*e.datasets.length*o;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+r+"px)")}var l={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"bar",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,o,r,l,n,s,d=i.dynamicColor;return{label:e.label,fill:e.backgroundColor||(null===(r=null===(o=null===(a=i.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||d,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=i.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||d,data:e.data,stack:e.stack}}))}};"ShowAll"===e.hover&&(l.options.tooltips=Object.assign(Object.assign({},l.options.tooltips),{mode:"index",intersect:!1}),l.options.hover=Object.assign(Object.assign({},l.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,l),this.isLoading=!1},e.prototype.renderHorizontalBarChart=function(e){var t,a=this,i={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{beginAtZero:null===(t=e.beginAtZero)||void 0===t||t,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"horizontalBar",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var i,o,r,l,n,s,d=a.dynamicColor;return{label:e.label,fill:e.backgroundColor||(null===(r=null===(o=null===(i=a.chartConfiguration)||void 0===i?void 0:i.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||d,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=a.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||d,data:e.data,stack:e.stack}}))}};"ShowAll"===e.hover&&(i.options.tooltips=Object.assign(Object.assign({},i.options.tooltips),{mode:"index",intersect:!1}),i.options.hover=Object.assign(Object.assign({},i.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,i),this.isLoading=!1},e.prototype.renderLineChart=function(e){var t,a,i=this,o=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var r=e.labels.length*o;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+r+"px)")}var l={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"line",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,o,r,l,n,s,d,u,c,b=i.dynamicColor;return{label:e.label,fill:e.backgroundColor||(null===(r=null===(o=null===(a=i.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||b,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=i.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||b,borderColor:e.borderColor||(null===(c=null===(u=null===(d=i.chartConfiguration)||void 0===d?void 0:d.defaultColors)||void 0===u?void 0:u[t])||void 0===c?void 0:c.borderColor)||b,data:e.data,lineTension:0}}))}};"ShowAll"===e.hover&&(l.options.tooltips=Object.assign(Object.assign({},l.options.tooltips),{mode:"index",intersect:!1}),l.options.hover=Object.assign(Object.assign({},l.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,l),this.isLoading=!1},e.prototype.renderStackAreaChart=function(e){var t,a,i=this,o=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var r=e.labels.length*o;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+r+"px)")}var l={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:[{display:!0,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},stacked:!0,scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}]},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||l+" : "+Number.toVNCurrency(s)}}}},type:"line",data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,o,r,l,n,s,d=i.dynamicColor;return{label:e.label,backgroundColor:e.backgroundColor||(null===(r=null===(o=null===(a=i.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===o?void 0:o[t])||void 0===r?void 0:r.backgroundColor)||d,borderColor:e.borderColor||(null===(s=null===(n=null===(l=i.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.borderColor)||d,data:e.data,lineTension:0}}))}};"ShowAll"===e.hover&&(l.options.tooltips=Object.assign(Object.assign({},l.options.tooltips),{mode:"index",intersect:!1}),l.options.hover=Object.assign(Object.assign({},l.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,l),this.isLoading=!1},e.prototype.renderBarLineChart=function(e){var t,a,i,o=this,r=null!==(t=e.labelWidth)&&void 0!==t?t:50;if(e.datasets.length){var n=e.datasets.filter((function(e){return"bar"===e.type})).length;if(n<=1){var s=e.labels.length*r;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+s+"px)")}else{s=e.labels.length*n*r;u.default(this.chartAreaWrapperExtendRef.nativeElement).css("width","max(100%,"+s+"px)")}}var c="I"+l.v4(),b="I"+l.v4(),v=[{type:"linear",display:!0,position:"left",id:c,ticks:{beginAtZero:null===(a=e.beginAtZero)||void 0===a||a,suggestedMin:0,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yTitle,labelString:e.yTitle||""}}];e.datasets.some((function(e){return"right"===e.yAlign}))&&v.push({type:"linear",display:!0,position:"right",id:b,ticks:{beginAtZero:null===(i=e.beginAtZero)||void 0===i||i,suggestedMin:0,callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.yRightLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}},scaleLabel:{display:!!e.yRightTitle,labelString:e.yRightTitle||""}});var p={options:{responsive:!0,maintainAspectRatio:!1,legend:{display:!e.hideLegend},title:{display:!0,text:e.title},scales:{xAxes:[{display:!0,scaleLabel:{display:!!e.xTitle,labelString:e.xTitle||""},ticks:{callback:function(t,a){var i;return(null===(i=e.ticks)||void 0===i?void 0:i.xLabel(t,a))||(Number.isNumber(t)?Number.toVNCurrency(t):t)}}}],yAxes:v},tooltips:{callbacks:{label:function(t,a){var i,o,r,l=null===(i=null==a?void 0:a.datasets[t.datasetIndex])||void 0===i?void 0:i.label,n=null==a?void 0:a.labels[t.index],s=null===(o=null==a?void 0:a.datasets[t.datasetIndex])||void 0===o?void 0:o.data[t.index];return(null===(r=e.tooltips)||void 0===r?void 0:r.label({datasetLabel:l,label:n,value:s}))||(l?"["+l+"] ":"")+" "+n+" : "+Number.toVNCurrency(s)}}}},data:{labels:e.labels,datasets:e.datasets.map((function(e,t){var a,i,r,l,n,s,d,u,v,p=o.dynamicColor;return{type:e.type,label:e.label,fill:e.backgroundColor||(null===(r=null===(i=null===(a=o.chartConfiguration)||void 0===a?void 0:a.defaultColors)||void 0===i?void 0:i[t])||void 0===r?void 0:r.backgroundColor)||p,backgroundColor:e.backgroundColor||(null===(s=null===(n=null===(l=o.chartConfiguration)||void 0===l?void 0:l.defaultColors)||void 0===n?void 0:n[t])||void 0===s?void 0:s.backgroundColor)||p,borderColor:e.borderColor||(null===(v=null===(u=null===(d=o.chartConfiguration)||void 0===d?void 0:d.defaultColors)||void 0===u?void 0:u[t])||void 0===v?void 0:v.borderColor)||p,data:e.data,yAxisID:"right"===e.yAlign?b:c,lineTension:0}}))}};"ShowAll"===e.hover&&(p.options.tooltips=Object.assign(Object.assign({},p.options.tooltips),{mode:"index",intersect:!1}),p.options.hover=Object.assign(Object.assign({},p.options.hover),{mode:"index",intersect:!1})),this.chart=new d(this.ctx,p),this.isLoading=!1},Object.defineProperty(e.prototype,"dynamicColor",{get:function(){return"rgb("+Math.floor(255*Math.random())+","+Math.floor(255*Math.random())+","+Math.floor(255*Math.random())+")"},enumerable:!1,configurable:!0}),e}();p.decorators=[{type:a.Component,args:[{selector:"sd-chart",template:'<div *ngIf="visible" class="c-chart-wrapper mt-2" >\r\n <div class="c-chart-area-wrapper" #chartWrapper>\r\n <div class="c-chart-area-wrapper-extend" [ngStyle]="{\'height\':height}" #chartAreaWrapperExtend [ngClass]="{\'c-loading\': isLoading}">\r\n <i [ngClass]="{\'d-none\': !isLoading}" class="fa fa-5x fa-spinner fa-pulse c-loading-icon"></i>\r\n <canvas #chart [ngClass]="{\'c-loading-margin\': isLoading}"></canvas>\r\n </div>\r\n </div>\r\n</div>\r\n',styles:[".c-container{background:#f5f6f7;border-radius:5px}.c-flex{border-radius:8px;display:flex;margin:15px}.c-chart-container{background:#fff;border-radius:5px;border-radius:8px;box-shadow:0 0 13px 0 rgba(82,63,105,.1);margin:15px;padding:15px}.c-btn-dashboard{align-self:center;height:60%;vertical-align:middle}.c-chart-wrapper{position:relative}.c-chart-wrapper>canvas{left:0;pointer-events:none;position:absolute;top:0}.c-chart-area-wrapper{overflow-x:auto;position:relative;width:100%}.c-chart-area-wrapper-extend{position:relative}.c-loading{opacity:.4}.c-loading-icon{left:calc(50% - 2.5rem);position:-webkit-sticky;position:sticky;top:calc(50% - 2.5rem)}.c-loading-margin{margin-top:-6rem}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:50px}::-webkit-scrollbar-thumb:hover{background:#555}"]}]}],p.ctorParameters=function(){return[{type:a.ChangeDetectorRef},{type:void 0,decorators:[{type:a.Optional},{type:a.Inject,args:[v]}]}]},p.propDecorators={chartOption:[{type:a.Input}],chartRef:[{type:a.ViewChild,args:["chart"]}],chartWrapperRef:[{type:a.ViewChild,args:["chartWrapper"]}],chartAxisRef:[{type:a.ViewChild,args:["chartAxis"]}],chartAreaWrapperExtendRef:[{type:a.ViewChild,args:["chartAreaWrapperExtend"]}]};var h=function(){};h.decorators=[{type:a.NgModule,args:[{imports:[i.CommonModule],declarations:[p],exports:[p],providers:[]}]}],e.CHART_CONFIG=v,e.ChartColors={Red:"rgb(255, 99, 132)",Orange:"rgb(255, 159, 64)",Yellow:"rgb(255, 205, 86)",Green:"rgb(75, 192, 192)",Blue:"rgb(54, 162, 235)",Purple:"rgb(153, 102, 255)",Grey:"rgb(201, 203, 207)",Purple700:"#2E224C",Purple600:"#453372",Purple500:"#574191",Purple400:"#7356BF",Purple300:"#957FCE",Purple200:"#C1B4E2",Purple100:"#E3DDF2",Purple50:"#F3F1F9",Blue700:"#0F2C60",Blue600:"#174291",Blue500:"#1D53B7",Blue400:"#276EF1",Blue300:"#5A90F4",Blue200:"#9FBFF8",Blue100:"#D4E2FC",Blue50:"#EDF3FD",Green700:"#0D4020",Green600:"#156A36",Green500:"#09863D",Green400:"#21A453",Green300:"#43BF75",Green200:"#9EE2B8",Green100:"#CFF3DD",Green50:"#F0FAF3",Yellow700:"#664C1A",Yellow600:"#997328",Yellow500:"#C19132",Yellow400:"#FFC043",Yellow300:"#FFCF70",Yellow200:"#FFE3AC",Yellow100:"#FFF2D9",Yellow50:"#FFF9EF",Orange700:"#5F2C14",Orange600:"#8E421E",Orange500:"#B45326",Orange400:"#ED6E33",Orange300:"#F19063",Orange200:"#F7BFA5",Orange100:"#FBE2D6",Orange50:"#FDF3EE",Red700:"#541A14",Red600:"#7F281E",Red500:"#A13226",Red400:"#D44333",Red300:"#DE7063",Red200:"#ECACA5",Red100:"#F6D9D6",Red50:"#FBEFEE",Brown700:"#3D281E",Brown600:"#5B3C2D",Brown500:"#744C39",Brown400:"#99644C",Brown300:"#B18976",Brown200:"#D2BAB0",Brown100:"#EBE0DB",Brown50:"#F6F2F0",Gray900:"#141414",Gray800:"#1F1F1F",Gray700:"#333333",Gray600:"#545454",Gray500:"#757575",Gray400:"#AFAFAF",Gray300:"#CBCBCB",Gray200:"#E2E2E2",Gray100:"#EEEEEE",Gray50:"#F6F6F6",Platinum700:"#394145",Platinum600:"#556268",Platinum500:"#6C7C83",Platinum400:"#8EA3AD",Platinum300:"#A1BDCA",Platinum200:"#CCDFE5",Platinum100:"#EBF5F7",Platinum50:"#F4FAFB",EatsGreen400:"#21A453",FreightBlue400:"#21A453",JumpRed400:"#FF0A2D",Black:"#000000",White:"#FFFFFF"},e.SdChart=p,e.SdChartModule=h,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
2
|
//# sourceMappingURL=sd-angular-core-chart.umd.min.js.map
|