@colijnit/sharedcomponents 1.0.24 → 1.0.25
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/.browserslistrc +16 -0
- package/.editorconfig +16 -0
- package/.vscode/extensions.json +4 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +11 -8
- package/Sharedcomponents.iml +11 -0
- package/angular.json +133 -0
- package/karma.conf.js +44 -0
- package/move-assets.js +14 -0
- package/package.json +74 -26
- package/projects/sharedcomponents/.browserslistrc +16 -0
- package/projects/sharedcomponents/README.md +24 -0
- package/projects/sharedcomponents/karma.conf.js +44 -0
- package/projects/sharedcomponents/ng-package.json +17 -0
- package/projects/sharedcomponents/package.json +18 -0
- package/projects/sharedcomponents/src/lib/assets/dictionary/text.properties.ts +8 -0
- package/projects/sharedcomponents/src/lib/assets/icons/angle_left_solid.svg +1 -0
- package/projects/sharedcomponents/src/lib/assets/icons/angle_right_solid.svg +1 -0
- package/projects/sharedcomponents/src/lib/assets/icons/arrow_fat_right.svg +1 -0
- package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_left.svg +8 -0
- package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_right.svg +4 -0
- package/projects/sharedcomponents/src/lib/assets/icons/bring_forward_regular.svg +1 -0
- package/projects/sharedcomponents/src/lib/assets/icons/check_round.svg +1 -0
- package/projects/sharedcomponents/src/lib/assets/icons/delete_left_regular.svg +1 -0
- package/projects/sharedcomponents/src/lib/assets/icons/delivery_truck.svg +12 -0
- package/projects/sharedcomponents/src/lib/assets/icons/email.svg +5 -0
- package/projects/sharedcomponents/src/lib/assets/icons/pdf.svg +15 -0
- package/projects/sharedcomponents/src/lib/assets/icons/print.svg +10 -0
- package/projects/sharedcomponents/src/lib/assets/icons/signature_field.svg +9 -0
- package/projects/sharedcomponents/src/lib/assets/icons/xml.svg +9 -0
- package/projects/sharedcomponents/src/lib/components/circular-gauge/co-circular-gauge.component.ts +139 -0
- package/projects/sharedcomponents/src/lib/components/circular-gauge/co-circular-gauge.module.ts +19 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/circular-gauge/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/circular-gauge/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/circular-gauge/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/circular-gauge/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-base-view.component.ts +68 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-day-view.component.ts +31 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-event.component.ts +67 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-events.component.ts +48 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.ts +81 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-header.component.ts +265 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-cell.component.ts +38 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.ts +50 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view.component.ts +46 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-month-view.component.ts +65 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-view.component.ts +38 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-select-view.component.ts +63 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-view.component.ts +46 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/style/_layout.scss +443 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/style/_material-definition.scss +11 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/style/_theme.scss +7 -0
- package/{lib/components/layout-switcher → projects/sharedcomponents/src/lib/components/date-planning/component/agenda}/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-months.component.ts +37 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-years.component.ts +52 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-header.component.ts +124 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-view.component.ts +201 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar.component.ts +35 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/style/_layout.scss +167 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/style/_material-definition.scss +7 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/style/_theme.scss +7 -0
- package/{lib/components/linear-gauge → projects/sharedcomponents/src/lib/components/date-planning/component/calendar}/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.component.ts +133 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.module.ts +56 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/style/_layout.scss +47 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/style/_material-definition.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/style/_theme.scss +7 -0
- package/projects/sharedcomponents/src/lib/components/date-planning/style/material.scss +5 -0
- package/projects/sharedcomponents/src/lib/components/docsign/component/signature/signature.component.ts +82 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/docsign/component/signatures/signatures.component.ts +50 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/docsign/docsign.component.ts +252 -0
- package/projects/sharedcomponents/src/lib/components/docsign/docsign.module.ts +22 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.component.ts +205 -0
- package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.module.ts +19 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.component.ts +98 -0
- package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.module.ts +21 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_theme.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/layout-switcher/style/material.scss +5 -0
- package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.component.ts +56 -0
- package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.module.ts +17 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_theme.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/linear-gauge/style/material.scss +5 -0
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/enums/send-option.ts +6 -0
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.component.ts +342 -0
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.module.ts +33 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.component.ts +97 -0
- package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.module.ts +21 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock-in-order/stock-in-order.component.ts +0 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock-information/stock-information.component.ts +64 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock-information-grid/stock-information-grid.component.ts +384 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock-location/stock-location.component.ts +84 -0
- package/{lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts → projects/sharedcomponents/src/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.ts} +2 -2
- package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-change-amount.component.ts +73 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-transfer.component.ts +153 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock.component.ts +165 -0
- package/projects/sharedcomponents/src/lib/components/stock/stock.module.ts +51 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_layout.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_material-definition.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_theme.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/material.scss +0 -0
- package/projects/sharedcomponents/src/lib/enum/calendar-view.enum.ts +6 -0
- package/{lib/enum/icon.enum.d.ts → projects/sharedcomponents/src/lib/enum/icon.enum.ts} +5 -2
- package/projects/sharedcomponents/src/lib/enum/keyboard-code.enum.ts +30 -0
- package/projects/sharedcomponents/src/lib/enum/language-code.enum.ts +6 -0
- package/projects/sharedcomponents/src/lib/enum/month.enum.ts +15 -0
- package/projects/sharedcomponents/src/lib/enum/time-period.enum.ts +9 -0
- package/projects/sharedcomponents/src/lib/factory/business-object-factory.ts +120 -0
- package/projects/sharedcomponents/src/lib/factory/decorators/boolean.decorator.ts +113 -0
- package/projects/sharedcomponents/src/lib/factory/decorators/complex-array.decorator.ts +61 -0
- package/projects/sharedcomponents/src/lib/factory/decorators/complex-field.decorator.ts +63 -0
- package/projects/sharedcomponents/src/lib/factory/decorators/date-field.decorator.ts +41 -0
- package/projects/sharedcomponents/src/lib/factory/decorators/string-number.decorator.ts +48 -0
- package/projects/sharedcomponents/src/lib/model/agenda-event-per-day.model.ts +6 -0
- package/projects/sharedcomponents/src/lib/model/agenda-event.model.ts +17 -0
- package/projects/sharedcomponents/src/lib/model/agenda-null-objects.ts +11 -0
- package/projects/sharedcomponents/src/lib/model/business-object.ts +85 -0
- package/projects/sharedcomponents/src/lib/model/constant/all-months.ts +17 -0
- package/projects/sharedcomponents/src/lib/model/date-range.ts +10 -0
- package/projects/sharedcomponents/src/lib/model/day.model.ts +9 -0
- package/projects/sharedcomponents/src/lib/model/icon-svg.ts +18 -0
- package/projects/sharedcomponents/src/lib/model/month.model.ts +11 -0
- package/projects/sharedcomponents/src/lib/model/time-window.bo.ts +21 -0
- package/projects/sharedcomponents/src/lib/model/week.model.ts +5 -0
- package/projects/sharedcomponents/src/lib/model/weekday.model.ts +17 -0
- package/projects/sharedcomponents/src/lib/pipe/array-number.pipe.ts +14 -0
- package/projects/sharedcomponents/src/lib/pipe/master-pipes.ts +7 -0
- package/projects/sharedcomponents/src/lib/pipe/ucfirst.pipe.ts +14 -0
- package/projects/sharedcomponents/src/lib/service/dictionary.service.ts +86 -0
- package/projects/sharedcomponents/src/lib/service/icon-cache.service.ts +51 -0
- package/projects/sharedcomponents/src/lib/service/options.service.ts +66 -0
- package/projects/sharedcomponents/src/lib/service/shared-connector.service.ts +258 -0
- package/projects/sharedcomponents/src/lib/service/shared-initializer.service.ts +29 -0
- package/projects/sharedcomponents/src/lib/service/shared.service.ts +21 -0
- package/projects/sharedcomponents/src/lib/service/stock.service.ts +95 -0
- package/{lib → projects/sharedcomponents/src/lib}/style/_mixin.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/style/_variables.scss +0 -0
- package/{lib → projects/sharedcomponents/src/lib}/style/sharedcomponents-globals.scss +0 -0
- package/projects/sharedcomponents/src/lib/utils/array-utils.ts +202 -0
- package/projects/sharedcomponents/src/lib/utils/calendar.utils.ts +75 -0
- package/projects/sharedcomponents/src/lib/utils/date-utils.ts +302 -0
- package/projects/sharedcomponents/src/lib/utils/function/not-nill.function.ts +4 -0
- package/projects/sharedcomponents/src/lib/utils/is-nill.function.ts +4 -0
- package/projects/sharedcomponents/src/lib/utils/string-utils.ts +67 -0
- package/{public-api.d.ts → projects/sharedcomponents/src/public-api.ts} +5 -0
- package/projects/sharedcomponents/src/test.ts +27 -0
- package/projects/sharedcomponents/tsconfig.lib.json +18 -0
- package/projects/sharedcomponents/tsconfig.lib.prod.json +10 -0
- package/projects/sharedcomponents/tsconfig.spec.json +17 -0
- package/script/merge-icons.js +39 -0
- package/src/app/app.component.scss +9 -0
- package/src/app/app.component.spec.ts +31 -0
- package/src/app/app.component.ts +156 -0
- package/src/app/app.module.ts +60 -0
- package/src/assets/.gitkeep +0 -0
- package/src/environments/environment.prod.ts +3 -0
- package/src/environments/environment.ts +16 -0
- package/src/favicon.ico +0 -0
- package/src/index.html +13 -0
- package/src/main.ts +12 -0
- package/src/polyfills.ts +53 -0
- package/src/styles.scss +40 -0
- package/src/test.ts +26 -0
- package/tsconfig.app.json +15 -0
- package/tsconfig.json +65 -0
- package/tsconfig.spec.json +18 -0
- package/bundles/colijnit-sharedcomponents.umd.js +0 -3701
- package/bundles/colijnit-sharedcomponents.umd.js.map +0 -1
- package/colijnit-sharedcomponents.d.ts +0 -16
- package/colijnit-sharedcomponents.metadata.json +0 -1
- package/esm2015/colijnit-sharedcomponents.js +0 -17
- package/esm2015/lib/assets/dictionary/text.properties.js +0 -11
- package/esm2015/lib/components/circular-gauge/co-circular-gauge.component.js +0 -125
- package/esm2015/lib/components/circular-gauge/co-circular-gauge.module.js +0 -21
- package/esm2015/lib/components/docsign/component/signature/signature.component.js +0 -75
- package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +0 -44
- package/esm2015/lib/components/docsign/docsign.component.js +0 -225
- package/esm2015/lib/components/docsign/docsign.module.js +0 -23
- package/esm2015/lib/components/key-pad/key-pad.component.js +0 -191
- package/esm2015/lib/components/key-pad/key-pad.module.js +0 -21
- package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +0 -74
- package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +0 -21
- package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +0 -55
- package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +0 -19
- package/esm2015/lib/components/send-method-dialog/enums/send-option.js +0 -8
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +0 -309
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +0 -31
- package/esm2015/lib/components/statusbar/statusbar.component.js +0 -81
- package/esm2015/lib/components/statusbar/statusbar.module.js +0 -23
- package/esm2015/lib/components/stock/stock-information/stock-information.component.js +0 -54
- package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +0 -350
- package/esm2015/lib/components/stock/stock-location/stock-location.component.js +0 -62
- package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +0 -2
- package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +0 -68
- package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +0 -130
- package/esm2015/lib/components/stock/stock.component.js +0 -140
- package/esm2015/lib/components/stock/stock.module.js +0 -48
- package/esm2015/lib/enum/icon.enum.js +0 -17
- package/esm2015/lib/enum/keyboard-code.enum.js +0 -32
- package/esm2015/lib/enum/language-code.enum.js +0 -8
- package/esm2015/lib/factory/business-object-factory.js +0 -120
- package/esm2015/lib/factory/decorators/boolean.decorator.js +0 -102
- package/esm2015/lib/factory/decorators/complex-array.decorator.js +0 -55
- package/esm2015/lib/factory/decorators/complex-field.decorator.js +0 -57
- package/esm2015/lib/factory/decorators/date-field.decorator.js +0 -36
- package/esm2015/lib/factory/decorators/string-number.decorator.js +0 -43
- package/esm2015/lib/model/business-object.js +0 -81
- package/esm2015/lib/model/icon-svg.js +0 -16
- package/esm2015/lib/service/dictionary.service.js +0 -76
- package/esm2015/lib/service/icon-cache.service.js +0 -51
- package/esm2015/lib/service/options.service.js +0 -71
- package/esm2015/lib/service/shared-connector.service.js +0 -278
- package/esm2015/lib/service/shared.service.js +0 -30
- package/esm2015/lib/service/stock.service.js +0 -95
- package/esm2015/lib/utils/array-utils.js +0 -183
- package/esm2015/lib/utils/is-nill.function.js +0 -5
- package/esm2015/lib/utils/string-utils.js +0 -64
- package/esm2015/public-api.js +0 -21
- package/fesm2015/colijnit-sharedcomponents.js +0 -3511
- package/fesm2015/colijnit-sharedcomponents.js.map +0 -1
- package/lib/assets/dictionary/text.properties.d.ts +0 -3
- package/lib/components/circular-gauge/co-circular-gauge.component.d.ts +0 -20
- package/lib/components/circular-gauge/co-circular-gauge.module.d.ts +0 -2
- package/lib/components/docsign/component/signature/signature.component.d.ts +0 -16
- package/lib/components/docsign/component/signatures/signatures.component.d.ts +0 -12
- package/lib/components/docsign/docsign.component.d.ts +0 -92
- package/lib/components/docsign/docsign.module.d.ts +0 -2
- package/lib/components/key-pad/key-pad.component.d.ts +0 -36
- package/lib/components/key-pad/key-pad.module.d.ts +0 -2
- package/lib/components/layout-switcher/layout-switcher.component.d.ts +0 -16
- package/lib/components/layout-switcher/layout-switcher.module.d.ts +0 -2
- package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +0 -16
- package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +0 -2
- package/lib/components/send-method-dialog/enums/send-option.d.ts +0 -6
- package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +0 -62
- package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +0 -2
- package/lib/components/statusbar/statusbar.component.d.ts +0 -23
- package/lib/components/statusbar/statusbar.module.d.ts +0 -2
- package/lib/components/stock/stock-information/stock-information.component.d.ts +0 -10
- package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +0 -60
- package/lib/components/stock/stock-location/stock-location.component.d.ts +0 -15
- package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +0 -18
- package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +0 -36
- package/lib/components/stock/stock.component.d.ts +0 -42
- package/lib/components/stock/stock.module.d.ts +0 -2
- package/lib/enum/keyboard-code.enum.d.ts +0 -30
- package/lib/enum/language-code.enum.d.ts +0 -6
- package/lib/factory/business-object-factory.d.ts +0 -23
- package/lib/factory/decorators/boolean.decorator.d.ts +0 -43
- package/lib/factory/decorators/complex-array.decorator.d.ts +0 -25
- package/lib/factory/decorators/complex-field.decorator.d.ts +0 -25
- package/lib/factory/decorators/date-field.decorator.d.ts +0 -17
- package/lib/factory/decorators/string-number.decorator.d.ts +0 -22
- package/lib/model/business-object.d.ts +0 -7
- package/lib/model/icon-svg.d.ts +0 -4
- package/lib/service/dictionary.service.d.ts +0 -21
- package/lib/service/icon-cache.service.d.ts +0 -18
- package/lib/service/options.service.d.ts +0 -13
- package/lib/service/shared-connector.service.d.ts +0 -43
- package/lib/service/shared.service.d.ts +0 -8
- package/lib/service/stock.service.d.ts +0 -38
- package/lib/utils/array-utils.d.ts +0 -57
- package/lib/utils/is-nill.function.d.ts +0 -1
- package/lib/utils/string-utils.d.ts +0 -22
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import {Component, EventEmitter, Inject, Input, LOCALE_ID, Output, ViewEncapsulation} from "@angular/core";
|
|
2
|
+
import {ArrayNumberPipe} from "../../../../pipe/array-number.pipe";
|
|
3
|
+
import {DatePipe} from "@angular/common";
|
|
4
|
+
import {DateUtils} from "../../../../utils/date-utils";
|
|
5
|
+
import {CalendarView} from "../../../../enum/calendar-view.enum";
|
|
6
|
+
import {LanguageCode} from "../../../../enum/language-code.enum";
|
|
7
|
+
|
|
8
|
+
type DateStamp = { day: number, inMonth: boolean, timestamp: number, week: number, selected: boolean };
|
|
9
|
+
|
|
10
|
+
@Component({
|
|
11
|
+
selector: "calendar-view",
|
|
12
|
+
template: `
|
|
13
|
+
<div class="calendar-content">
|
|
14
|
+
<div>
|
|
15
|
+
<div class="week-day-header week-row">
|
|
16
|
+
<div class="week-acronym"></div>
|
|
17
|
+
<div *ngFor="let weekDay of weekDayLabel" [textContent]="weekDay | ucfirst"
|
|
18
|
+
class="week-day-label"></div>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="week-row" *ngFor="let week of weeks;trackBy:trackByWeek">
|
|
21
|
+
<div [textContent]="week[0].week" class="week-number"></div>
|
|
22
|
+
<div *ngFor="let date of week;trackBy:trackByStamp" class="week-day"
|
|
23
|
+
(click)="onDateClick(date)" [textContent]="date.day"
|
|
24
|
+
[class.in-month]="date.inMonth" [class.is-selected]="date.selected"
|
|
25
|
+
[class.is-today]="date.timestamp === todayDayStamp"></div>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
`,
|
|
30
|
+
encapsulation: ViewEncapsulation.None
|
|
31
|
+
})
|
|
32
|
+
//fixme we don't have a todayDayStamp field but our template references it
|
|
33
|
+
export class CalendarViewComponent {
|
|
34
|
+
|
|
35
|
+
@Input()
|
|
36
|
+
public set view(value: CalendarView) {
|
|
37
|
+
this._view = value;
|
|
38
|
+
this._selectDays();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public get view(): CalendarView {
|
|
42
|
+
return this._view;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@Input()
|
|
46
|
+
public set selectedDate(value: Date) {
|
|
47
|
+
this._selectedDate = value;
|
|
48
|
+
this._selectedDate.setHours(0, 0, 0, 0);
|
|
49
|
+
this._prepareWeeks();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
public get selectedDate(): Date {
|
|
53
|
+
return this._selectedDate;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
@Output()
|
|
57
|
+
public selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();
|
|
58
|
+
|
|
59
|
+
public trackByStamp: Function = (index: number, stamp: DateStamp): number => {
|
|
60
|
+
return stamp && stamp.timestamp || index;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
public trackByWeek: Function = (index: number, week: DateStamp[]): number => {
|
|
64
|
+
return week && week[0].week || index;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
public weekDayLabel: string[] = [];
|
|
68
|
+
|
|
69
|
+
public weeks: DateStamp[][] = [];
|
|
70
|
+
|
|
71
|
+
private _selectedDate: Date = new Date();
|
|
72
|
+
|
|
73
|
+
private _view: CalendarView = CalendarView.WeekView;
|
|
74
|
+
|
|
75
|
+
constructor(
|
|
76
|
+
@Inject(LOCALE_ID) private readonly _locale: LanguageCode,
|
|
77
|
+
) {
|
|
78
|
+
this.selectedDate.setHours(0, 0, 0, 0);
|
|
79
|
+
this._setLabels();
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
public onDateClick(date: DateStamp): void {
|
|
83
|
+
this.selectedDate = new Date(date.timestamp);
|
|
84
|
+
this.selectedDateChange.emit(this.selectedDate);
|
|
85
|
+
this._selectDays();
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
private _setLabels(): void {
|
|
89
|
+
const datePipe: DatePipe = new DatePipe(this._locale);
|
|
90
|
+
|
|
91
|
+
const currentDay: number = this.selectedDate.getDay();
|
|
92
|
+
const startWeekDate: Date = new Date(this.selectedDate.getTime());
|
|
93
|
+
startWeekDate.setDate(startWeekDate.getDate() - currentDay - 1);
|
|
94
|
+
|
|
95
|
+
this.weekDayLabel = new ArrayNumberPipe().transform(7).map(() => {
|
|
96
|
+
startWeekDate.setDate(startWeekDate.getDate() + 1);
|
|
97
|
+
return datePipe.transform(startWeekDate, "E");
|
|
98
|
+
});
|
|
99
|
+
this.weekDayLabel.push(this.weekDayLabel.shift());
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
private _prepareWeeks(): void {
|
|
103
|
+
this.weeks.length = 0;
|
|
104
|
+
|
|
105
|
+
const date: Date = new Date(this.selectedDate.getTime());
|
|
106
|
+
date.setHours(0, 0, 0, 0);
|
|
107
|
+
|
|
108
|
+
// go to last day of month
|
|
109
|
+
date.setMonth(date.getMonth() + 1);
|
|
110
|
+
date.setDate(0);
|
|
111
|
+
const monthEndDay: number = date.getDay();
|
|
112
|
+
const monthEndDate: number = date.getDate();
|
|
113
|
+
|
|
114
|
+
// days after end of month
|
|
115
|
+
const daysAfter: number = !monthEndDay ? 0 : 7 - monthEndDay;
|
|
116
|
+
|
|
117
|
+
// go to first day of month
|
|
118
|
+
date.setDate(1);
|
|
119
|
+
const monthBeginDay: number = date.getDay();
|
|
120
|
+
|
|
121
|
+
// days before start of month
|
|
122
|
+
const daysBefore: number = !monthBeginDay ? 6 : monthBeginDay - 1;
|
|
123
|
+
|
|
124
|
+
// go to start of calendar view
|
|
125
|
+
date.setDate(-daysBefore + 1);
|
|
126
|
+
|
|
127
|
+
// amount of weeks to display
|
|
128
|
+
const weekCount: number = Math.ceil((daysBefore + daysAfter + monthEndDate) / 7);
|
|
129
|
+
const weekStart: number = DateUtils.GetWeekNumber(date);
|
|
130
|
+
const weekEnd: number = weekStart + weekCount - 1;
|
|
131
|
+
|
|
132
|
+
// iterate over week count
|
|
133
|
+
for (let i: number = weekStart; i <= weekEnd; i++) {
|
|
134
|
+
let week: number = i;
|
|
135
|
+
|
|
136
|
+
// only recalculate week when it's necessary
|
|
137
|
+
if (weekStart > 50) {
|
|
138
|
+
week = DateUtils.GetWeekNumber(date);
|
|
139
|
+
}
|
|
140
|
+
const days: DateStamp[] = [];
|
|
141
|
+
|
|
142
|
+
// iterate over 7 days
|
|
143
|
+
for (let ii: number = 1; ii <= 7; ii++) {
|
|
144
|
+
// check if we are in the current month
|
|
145
|
+
let inMonth: boolean = true;
|
|
146
|
+
if (i === weekStart) {
|
|
147
|
+
inMonth = ii > daysBefore;
|
|
148
|
+
} else if (i === weekEnd) {
|
|
149
|
+
inMonth = ii <= 7 - daysAfter;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
const timestamp: number = date.getTime();
|
|
153
|
+
// add dateStamp to date array
|
|
154
|
+
days.push({
|
|
155
|
+
week: week,
|
|
156
|
+
inMonth: inMonth,
|
|
157
|
+
day: date.getDate(),
|
|
158
|
+
timestamp: timestamp,
|
|
159
|
+
selected: this.selectedDate.getTime() === timestamp
|
|
160
|
+
});
|
|
161
|
+
// go one day further
|
|
162
|
+
date.setDate(date.getDate() + 1);
|
|
163
|
+
}
|
|
164
|
+
this.weeks.push(days);
|
|
165
|
+
}
|
|
166
|
+
this._selectDays();
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
private _selectDays(): void {
|
|
170
|
+
this._resetSelection();
|
|
171
|
+
if (!this.selectedDate) {
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
const weekNumber: number = DateUtils.GetWeekNumber(this.selectedDate);
|
|
175
|
+
const len: number = this.weeks.length;
|
|
176
|
+
for (let i: number = 0; i < len; i++) {
|
|
177
|
+
const leni: number = this.weeks[i].length;
|
|
178
|
+
for (let ii: number = 0; ii < leni; ii++) {
|
|
179
|
+
if (this.weeks[i][ii].inMonth && this.view === CalendarView.MonthView) {
|
|
180
|
+
this.weeks[i][ii].selected = true;
|
|
181
|
+
} else if (this.weeks[i][ii].week === weekNumber && this.view === CalendarView.WeekView) {
|
|
182
|
+
this.weeks[i][ii].selected = true;
|
|
183
|
+
} else if (this.weeks[i][ii].timestamp === this.selectedDate.getTime() && this.view === CalendarView.WeekSelectView) {
|
|
184
|
+
this.weeks[i][ii].selected = true;
|
|
185
|
+
} else if (this.weeks[i][ii].timestamp === this.selectedDate.getTime() && this.view === CalendarView.DayView) {
|
|
186
|
+
this.weeks[i][ii].selected = true;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
private _resetSelection(): void {
|
|
193
|
+
const len: number = this.weeks.length;
|
|
194
|
+
for (let i: number = 0; i < len; i++) {
|
|
195
|
+
const leni: number = this.weeks[i].length;
|
|
196
|
+
for (let ii: number = 0; ii < leni; ii++) {
|
|
197
|
+
this.weeks[i][ii].selected = false;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {Component, EventEmitter, Input, Output, ViewEncapsulation} from "@angular/core";
|
|
2
|
+
import {CalendarView} from "../../../../enum/calendar-view.enum";
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: "calendar",
|
|
6
|
+
template: `
|
|
7
|
+
<div class="sc-calendar">
|
|
8
|
+
<calendar-header [selectedDate]="selectedDate" (selectedDateChange)="changeSelectedDate($event)"></calendar-header>
|
|
9
|
+
<calendar-view [view]="view" [selectedDate]="selectedDate" (selectedDateChange)="changeSelectedDate($event)"></calendar-view>
|
|
10
|
+
</div>
|
|
11
|
+
`,
|
|
12
|
+
encapsulation: ViewEncapsulation.None
|
|
13
|
+
})
|
|
14
|
+
export class CalendarComponent {
|
|
15
|
+
|
|
16
|
+
@Input()
|
|
17
|
+
public view: CalendarView = CalendarView.WeekView;
|
|
18
|
+
|
|
19
|
+
@Input()
|
|
20
|
+
public selectedDate: Date = new Date();
|
|
21
|
+
|
|
22
|
+
@Input()
|
|
23
|
+
public days: Date[] = [];
|
|
24
|
+
|
|
25
|
+
@Output()
|
|
26
|
+
public selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();
|
|
27
|
+
|
|
28
|
+
constructor() {
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
public changeSelectedDate(date: Date): void {
|
|
32
|
+
this.selectedDate = date;
|
|
33
|
+
this.selectedDateChange.emit(this.selectedDate);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
@import "../../../../../style/mixin";
|
|
2
|
+
|
|
3
|
+
@include export-module('sc-calendar') {
|
|
4
|
+
.sc-calendar {
|
|
5
|
+
|
|
6
|
+
.calendar-header-row{
|
|
7
|
+
flex-direction: row;
|
|
8
|
+
box-sizing: border-box;
|
|
9
|
+
display: flex;
|
|
10
|
+
place-content: center space-between;
|
|
11
|
+
align-items: center;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.pointer-hover {
|
|
15
|
+
cursor: pointer;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
icon {
|
|
19
|
+
width: 20px;
|
|
20
|
+
height: 20px;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.month, .year {
|
|
24
|
+
user-select: none;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.month {
|
|
28
|
+
margin-right: 10px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.select-month-year-window {
|
|
32
|
+
z-index: 9001;
|
|
33
|
+
background: white;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
default-ok-cancel-buttons {
|
|
37
|
+
align-self: center;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.vertical-divider {
|
|
41
|
+
flex: 0 0;
|
|
42
|
+
padding: 0;
|
|
43
|
+
height: 80%;
|
|
44
|
+
flex-basis: 1px;
|
|
45
|
+
margin-top: 5px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.selected-month {
|
|
49
|
+
color: $color-light;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.input-date-window {
|
|
53
|
+
&.expanded {
|
|
54
|
+
box-shadow: 0 0 5px 0 rgba(72,79,96,0.25);
|
|
55
|
+
border: 1px solid;
|
|
56
|
+
border-radius: 5px;
|
|
57
|
+
}
|
|
58
|
+
position: relative;
|
|
59
|
+
z-index: 1000;
|
|
60
|
+
transform-origin: center;
|
|
61
|
+
pointer-events: none;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.calendar-content {
|
|
65
|
+
pointer-events: initial;
|
|
66
|
+
background: $color-light;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.month-changer {
|
|
70
|
+
height: 40px;
|
|
71
|
+
.month-change {
|
|
72
|
+
opacity: 0.5;
|
|
73
|
+
&:hover {
|
|
74
|
+
opacity: 1;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.month-year-display {
|
|
80
|
+
margin-left: 10px;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.view-changer icon {
|
|
84
|
+
width: 20px;
|
|
85
|
+
height: 20px;
|
|
86
|
+
[fill] {
|
|
87
|
+
fill: $color-action;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
.week-row {
|
|
93
|
+
flex-direction: row;
|
|
94
|
+
box-sizing: border-box;
|
|
95
|
+
display: flex;
|
|
96
|
+
> div {
|
|
97
|
+
flex: 1;
|
|
98
|
+
text-align: center;
|
|
99
|
+
line-height: 33px;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.week-day-label,
|
|
104
|
+
.week-acronym,
|
|
105
|
+
.week-number {
|
|
106
|
+
background: $color-less-light;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.week-day-label,
|
|
110
|
+
.week-number {
|
|
111
|
+
font-weight: bold;
|
|
112
|
+
border: 0 solid $color-light;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.week-number {
|
|
116
|
+
border-top-width: 1px;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.week-day-label {
|
|
120
|
+
border-left-width: 1px;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.week-acronym {
|
|
124
|
+
color: $color-grey;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.calendar-view,
|
|
128
|
+
.week-day {
|
|
129
|
+
cursor: pointer;
|
|
130
|
+
border: 1px solid transparent;
|
|
131
|
+
&.in-month {
|
|
132
|
+
color: $color-dark;
|
|
133
|
+
}
|
|
134
|
+
&.is-selected,
|
|
135
|
+
&:hover {
|
|
136
|
+
color: $color-light;
|
|
137
|
+
font-weight: normal;
|
|
138
|
+
}
|
|
139
|
+
&.is-today {
|
|
140
|
+
color: $color-action;
|
|
141
|
+
font-weight: bold;
|
|
142
|
+
}
|
|
143
|
+
&.is-selected {
|
|
144
|
+
color: $color-light;
|
|
145
|
+
background: $color-active !important;
|
|
146
|
+
border-color: $color-active !important;
|
|
147
|
+
border-radius: 0;
|
|
148
|
+
}
|
|
149
|
+
&:hover {
|
|
150
|
+
background: $color-active-accent;
|
|
151
|
+
border-color: $color-active-accent;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.week-day {
|
|
156
|
+
color: $color-grey;
|
|
157
|
+
//border-radius: 50%;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.calendar-view {
|
|
161
|
+
line-height: 45px;
|
|
162
|
+
text-align: center;
|
|
163
|
+
border-radius: 10px;
|
|
164
|
+
width: 69px;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ChangeDetectorRef,
|
|
3
|
+
Component,
|
|
4
|
+
ElementRef,
|
|
5
|
+
EventEmitter,
|
|
6
|
+
Input,
|
|
7
|
+
Output,
|
|
8
|
+
Renderer2,
|
|
9
|
+
ViewChild,
|
|
10
|
+
ViewEncapsulation
|
|
11
|
+
} from "@angular/core";
|
|
12
|
+
import {animate, state, style, transition, trigger} from "@angular/animations";
|
|
13
|
+
import {CalendarView} from "@syncfusion/ej2-angular-calendars";
|
|
14
|
+
|
|
15
|
+
@Component({
|
|
16
|
+
selector: "sc-date-planning",
|
|
17
|
+
template: `
|
|
18
|
+
<div class="sc-agenda">
|
|
19
|
+
<div class="content-wrapper">
|
|
20
|
+
<calendar *ngIf="calendarNavigation"
|
|
21
|
+
[view]="view"
|
|
22
|
+
[(days)]="days"
|
|
23
|
+
[selectedDate]="selectedDate" (selectedDateChange)="doChangeSelectedDate($event)"></calendar>
|
|
24
|
+
<div class="agenda-content-wrapper mini-scrollbar">
|
|
25
|
+
<div class="agenda-content">
|
|
26
|
+
<agenda-header [view]="view" (viewChange)="doChangeView($event)"
|
|
27
|
+
[firstAvailableDate]="firstAvailableDate"
|
|
28
|
+
[eventsPerDay]="eventsPerDay"
|
|
29
|
+
[selectedDate]="selectedDate"
|
|
30
|
+
(selectedDateChange)="doChangeSelectedDate($event)"
|
|
31
|
+
(rangeChange)="doChangeSelectedDate($event, true)"></agenda-header>
|
|
32
|
+
<agenda-view [view]="view"
|
|
33
|
+
[selectedDate]="selectedDate"
|
|
34
|
+
[eventsPerDay]="eventsPerDay"
|
|
35
|
+
(eventChecked)="eventChecked.emit($event)"></agenda-view>
|
|
36
|
+
</div>
|
|
37
|
+
</div>
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
<button-colijn *ngIf="showButton && eventsPerDay.length > 0" class="text-only select-agenda-button"
|
|
41
|
+
[label]="buttonLabel"
|
|
42
|
+
(click)="buttonClick.emit($event)">
|
|
43
|
+
</button-colijn>
|
|
44
|
+
`,
|
|
45
|
+
animations: [
|
|
46
|
+
trigger("showHideWindow", [
|
|
47
|
+
state("void", style({transform: "scaleY(0)"})),
|
|
48
|
+
state("*", style({transform: "scaleY(1)"})),
|
|
49
|
+
transition(":enter, :leave", [
|
|
50
|
+
animate("200ms ease-in-out")
|
|
51
|
+
])
|
|
52
|
+
])
|
|
53
|
+
],
|
|
54
|
+
encapsulation: ViewEncapsulation.None
|
|
55
|
+
})
|
|
56
|
+
|
|
57
|
+
export class DatePlanningComponent {
|
|
58
|
+
|
|
59
|
+
@Input()
|
|
60
|
+
public calendarNavigation: boolean = false;
|
|
61
|
+
|
|
62
|
+
@Input()
|
|
63
|
+
public showButton: boolean = false;
|
|
64
|
+
|
|
65
|
+
@Input()
|
|
66
|
+
public selectedDate: Date;
|
|
67
|
+
|
|
68
|
+
@Input()
|
|
69
|
+
public firstAvailableDate: Date;
|
|
70
|
+
|
|
71
|
+
@Input()
|
|
72
|
+
public buttonLabel: string = "";
|
|
73
|
+
|
|
74
|
+
@Input()
|
|
75
|
+
public eventsPerDay: any = [];
|
|
76
|
+
|
|
77
|
+
@Input()
|
|
78
|
+
public view: CalendarView;
|
|
79
|
+
|
|
80
|
+
@Output()
|
|
81
|
+
public readonly eventChecked: EventEmitter<any> = new EventEmitter<any>();
|
|
82
|
+
|
|
83
|
+
@Output()
|
|
84
|
+
public readonly selectedDateChange: EventEmitter<Date> = new EventEmitter<Date>();
|
|
85
|
+
|
|
86
|
+
@Output()
|
|
87
|
+
public readonly rangeChange: EventEmitter<Date> = new EventEmitter<Date>();
|
|
88
|
+
|
|
89
|
+
@Output()
|
|
90
|
+
public readonly viewChange: EventEmitter<CalendarView> = new EventEmitter<CalendarView>();
|
|
91
|
+
|
|
92
|
+
@Output()
|
|
93
|
+
public readonly buttonClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();
|
|
94
|
+
|
|
95
|
+
@ViewChild("dayStart", { static: true })
|
|
96
|
+
public dayStart: ElementRef;
|
|
97
|
+
|
|
98
|
+
public days: Date[] = [];
|
|
99
|
+
private _selectedDate: Date = new Date();
|
|
100
|
+
|
|
101
|
+
constructor(
|
|
102
|
+
private _changeDetector: ChangeDetectorRef,
|
|
103
|
+
private renderer: Renderer2
|
|
104
|
+
) {
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
public doChangeSelectedDate(date: Date, rangeChanged: boolean = false): void {
|
|
108
|
+
this.selectedDate = new Date(date);
|
|
109
|
+
if (rangeChanged) {
|
|
110
|
+
this.rangeChange.next(this.selectedDate);
|
|
111
|
+
} else {
|
|
112
|
+
this.selectedDateChange.next(this.selectedDate);
|
|
113
|
+
}
|
|
114
|
+
this._changeDetector.detectChanges();
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
public doChangeView(view: CalendarView): void {
|
|
118
|
+
this.view = view;
|
|
119
|
+
this.viewChange.next(this.view);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
public scrollToDayStart(): void {
|
|
123
|
+
if (this.dayStart !== undefined) {
|
|
124
|
+
const dayStart: any = this.renderer.selectRootElement("#dayStart");
|
|
125
|
+
if (dayStart) {
|
|
126
|
+
setTimeout(() => {
|
|
127
|
+
dayStart.scrollIntoView({behavior: "instant", block: "center"});
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import {DatePlanningComponent} from "./date-planning.component";
|
|
4
|
+
import {IconModule, InputDatePickerModule} from "@colijnit/corecomponents_v12";
|
|
5
|
+
import {CalendarAllYearsComponent} from "./component/calendar/calendar-all-years.component";
|
|
6
|
+
import {CalendarAllMonthsComponent} from "./component/calendar/calendar-all-months.component";
|
|
7
|
+
import {CalendarHeaderComponent} from "./component/calendar/calendar-header.component";
|
|
8
|
+
import {CalendarComponent} from "./component/calendar/calendar.component";
|
|
9
|
+
import {CalendarViewComponent} from "./component/calendar/calendar-view.component";
|
|
10
|
+
import {AgendaHeaderComponent} from "./component/agenda/agenda-header.component";
|
|
11
|
+
import {AgendaViewComponent} from "./component/agenda/agenda-view.component";
|
|
12
|
+
import {AgendaMonthViewComponent} from "./component/agenda/agenda-month-view.component";
|
|
13
|
+
import {AgendaDayViewComponent} from "./component/agenda/agenda-day-view.component";
|
|
14
|
+
import {AgendaWeekViewComponent} from "./component/agenda/agenda-week-view.component";
|
|
15
|
+
import {AgendaWeekSelectViewComponent} from "./component/agenda/agenda-week-select-view.component";
|
|
16
|
+
import {AgendaHourViewComponent} from "./component/agenda/agenda-hour-view.component";
|
|
17
|
+
import {AgendaHourCellComponent} from "./component/agenda/agenda-hour-cell.component";
|
|
18
|
+
import {AgendaHourViewLabelsComponent} from "./component/agenda/agenda-hour-view-labels.component";
|
|
19
|
+
import {AgendaHalfHourCellComponent} from "./component/agenda/agenda-half-hour-cell.component";
|
|
20
|
+
import {AgendaEventsComponent} from "./component/agenda/agenda-events.component";
|
|
21
|
+
import {AgendaEventComponent} from "./component/agenda/agenda-event.component";
|
|
22
|
+
import {MASTER_PIPES} from "../../pipe/master-pipes";
|
|
23
|
+
|
|
24
|
+
@NgModule({
|
|
25
|
+
imports: [
|
|
26
|
+
CommonModule,
|
|
27
|
+
InputDatePickerModule,
|
|
28
|
+
IconModule,
|
|
29
|
+
],
|
|
30
|
+
declarations: [
|
|
31
|
+
DatePlanningComponent,
|
|
32
|
+
CalendarAllYearsComponent,
|
|
33
|
+
CalendarAllMonthsComponent,
|
|
34
|
+
CalendarHeaderComponent,
|
|
35
|
+
CalendarComponent,
|
|
36
|
+
CalendarViewComponent,
|
|
37
|
+
AgendaHeaderComponent,
|
|
38
|
+
AgendaViewComponent,
|
|
39
|
+
AgendaMonthViewComponent,
|
|
40
|
+
AgendaDayViewComponent,
|
|
41
|
+
AgendaWeekViewComponent,
|
|
42
|
+
AgendaWeekSelectViewComponent,
|
|
43
|
+
AgendaHourViewComponent,
|
|
44
|
+
AgendaHourCellComponent,
|
|
45
|
+
AgendaHourViewLabelsComponent,
|
|
46
|
+
AgendaHalfHourCellComponent,
|
|
47
|
+
AgendaEventsComponent,
|
|
48
|
+
AgendaEventComponent,
|
|
49
|
+
MASTER_PIPES
|
|
50
|
+
],
|
|
51
|
+
exports: [
|
|
52
|
+
DatePlanningComponent
|
|
53
|
+
]
|
|
54
|
+
})
|
|
55
|
+
export class DatePlanningModule {
|
|
56
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
@import "../../../style/mixin";
|
|
2
|
+
|
|
3
|
+
@include export-module('sc-date-planning-layout') {
|
|
4
|
+
.sc-date-planning {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
align-items: center;
|
|
8
|
+
min-height: 0;
|
|
9
|
+
|
|
10
|
+
.content-wrapper {
|
|
11
|
+
display: flex;
|
|
12
|
+
width: 100%;
|
|
13
|
+
flex-wrap: wrap;
|
|
14
|
+
height: 100%;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.agenda-wrapper {
|
|
18
|
+
width: 100%;
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: row;
|
|
21
|
+
height: 100%;
|
|
22
|
+
overflow: hidden;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.agenda-content-wrapper {
|
|
26
|
+
display: flex;
|
|
27
|
+
flex-direction: column;
|
|
28
|
+
width: 100%;
|
|
29
|
+
overflow: auto;
|
|
30
|
+
min-width: 400px;
|
|
31
|
+
flex-basis: 66%;
|
|
32
|
+
flex-grow: 1;
|
|
33
|
+
max-height: 100%;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.agenda-content {
|
|
37
|
+
width: 100%;
|
|
38
|
+
height: 100%;
|
|
39
|
+
flex-direction: column;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
calendar {
|
|
43
|
+
flex-basis: 33%;
|
|
44
|
+
flex-grow: 1;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
package/projects/sharedcomponents/src/lib/components/date-planning/style/_material-definition.scss
ADDED
|
File without changes
|