carriera-intern 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursor/rules/icons.mdc +7 -0
- package/.editorconfig +17 -0
- package/.vscode/extensions.json +4 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +59 -0
- package/angular.json +94 -0
- package/carriera-intern@0.0.0 +0 -0
- package/package.json +61 -0
- package/projects/carriera-intern-components/.storybook/main.ts +12 -0
- package/projects/carriera-intern-components/.storybook/preview-head.html +13 -0
- package/projects/carriera-intern-components/.storybook/preview.ts +54 -0
- package/projects/carriera-intern-components/.storybook/tsconfig.doc.json +10 -0
- package/projects/carriera-intern-components/.storybook/tsconfig.json +11 -0
- package/projects/carriera-intern-components/.storybook/typings.d.ts +4 -0
- package/projects/carriera-intern-components/README.md +63 -0
- package/projects/carriera-intern-components/ng-package.json +14 -0
- package/projects/carriera-intern-components/package.json +14 -0
- package/projects/carriera-intern-components/public/assets/animations/animation-document-update.json +1 -0
- package/projects/carriera-intern-components/public/assets/animations/animation-image.json +1 -0
- package/projects/carriera-intern-components/public/assets/animations/animation-logo.json +1 -0
- package/projects/carriera-intern-components/public/assets/animations/animation-media.json +1 -0
- package/projects/carriera-intern-components/public/assets/cdl.png +0 -0
- package/projects/carriera-intern-components/public/assets/exampledoc.png +0 -0
- package/projects/carriera-intern-components/public/assets/examplelargeview.png +0 -0
- package/projects/carriera-intern-components/public/assets/icons/Thumb-active.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/Thumb.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-primary-up.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-secondary-down.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-secondary-left.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-secondary-right.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_bbt.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_bmo_harris.svg +13 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_capital_one.svg +11 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_chase.svg +11 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_chime.svg +10 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_citi.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_fifth_third.svg +14 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_green_dot.svg +17 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_mb_financial.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_meta.svg +11 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_navi_federal.svg +14 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_of_america.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_pnc.svg +10 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_regions.svg +14 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_renasant.svg +14 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_tcf.svg +11 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_truist.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_us.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_wells_fargo.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-color.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-drop-zone-focus.svg +48 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-edit.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-edit2.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-expand.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-gps.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-illustration-dark.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone-cover.svg +34 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone-profile.svg +58 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone-video.svg +41 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone.svg +43 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-illustration.svg +18 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-loader.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-search.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/cai-violation-hazmat.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-contact.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-count.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-fuel-card.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-people.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-share.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-user-2.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-address.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-checkmark.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-date.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-email.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-fax.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-label.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-money-additional.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-money.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-phone-extension.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-phone.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-sort-by.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-sort-descending.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/general/cai-website.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_corrosive_8.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_dangerous_when_wet_4.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_1.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_2.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_3.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_4.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_5.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_6.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_flammable_3.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_flammable_gas_2.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_flammable_solid_4.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_inhalation_hazzard_2.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_inhalation_hazzard_6.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_organic_peroxide_5_2.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_oxidizer_5_1.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_oxygen_non_flam_gas_2.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_radioactive_7.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_spontaneously_combustible_4.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/integration/cai-efs.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-cancel.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-copy.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-dislike.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-drag.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-favorite.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-like.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-minus.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-password-hidden.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-password-key.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-password-shown.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai-plus.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai_time.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/interaction/cai_x.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/load/cai-driver.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/load/cai-load.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/load/cai-ltl-single.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/load/cai-parking.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/load/cai-weight.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_atro.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_beall.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_bedard.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_butler.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_de_lucio.svg +17 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_dorsey.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_east.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_fontaine.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_fruehauf.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_gallegos.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_great_dane.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_heil.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_hudson.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_hyndai.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_kaufman.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_mac.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_manac.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_polar.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_ravens.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_reitnouer.svg +12 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_strick.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_timpte.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_trail_king.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_transcraft.svg +12 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_tremcar.svg +10 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_tytal.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_utility.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_vanguard.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_vantage.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_wabash.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_walinga.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_wilson.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_chevrolet.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_ford.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_freightliner.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_gmc.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_hino.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_international.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_isuzu.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_kenworth.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_mack.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_peterbilt.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_volvo.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_western_star.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/menu/cai-delete.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/menu/cai-download.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/menu/cai-reset.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/cai-pm-base.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/trailer/cai-pm-general.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/trailer/cai-pm-pto-pump.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/trailer/cai-repair-reefer.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-air-filter.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-alignment.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-battery.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-belts.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-brake-chamber.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-engine-oil-filter.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-engine-tune-up.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-radiator.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-transmission-fluid.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-turbo.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-ab.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-bc.svg +35 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-mb.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-nb.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-nl.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-ns.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-on.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-pe.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-qc.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-sk.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-yt.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ak.svg +14 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-al.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ar.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-az.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ca.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-co.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ct.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-de.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-fl.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ga.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-hi.svg +10 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ia.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-id.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-il.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-in.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ks.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ky.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-la.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ma.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-md.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-me.svg +9 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mi.svg +11 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mn.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mo.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ms.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mt.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nc.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nd.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ne.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nh.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nj.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nm.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nv.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ny.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-oh.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ok.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-or.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-pa.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ri.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-sc.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-sd.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-tn.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-tx.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ut.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-va.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-vt.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wa.svg +15 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wi.svg +4 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wv.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wy.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/status/cai-status-warning-lite.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/status/cai-status-warning.svg +3 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_bottom-dump.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_carhauler-stinger.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_carhauler.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_chassis.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_conestoga.svg +13 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_container.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_dryvan.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_end-dump.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_flatbed.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_hopper.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_low-boy.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_reefer.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_side-kit.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_step-deck.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_tanker-pneumatic.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_tanker.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_box-truck.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_car-hauler.svg +7 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_cargo-van.svg +5 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_cement.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_dump.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_garbage.svg +10 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_reefer.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_semi-truck.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_semi-wSleeper.svg +8 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_spotter.svg +6 -0
- package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_tow-truck.svg +8 -0
- package/projects/carriera-intern-components/public/assets/invexample.png +0 -0
- package/projects/carriera-intern-components/public/assets/invoice.png +0 -0
- package/projects/carriera-intern-components/public/assets/json/icons.json +985 -0
- package/projects/carriera-intern-components/public/assets/truck.png +0 -0
- package/projects/carriera-intern-components/public/favicon.ico +0 -0
- package/projects/carriera-intern-components/src/Changelog.mdx +285 -0
- package/projects/carriera-intern-components/src/Icons.mdx +279 -0
- package/projects/carriera-intern-components/src/app/app.config.ts +26 -0
- package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.html +28 -0
- package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.scss +414 -0
- package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.ts +66 -0
- package/projects/carriera-intern-components/src/app/components/avatar/avatar.stories.ts +787 -0
- package/projects/carriera-intern-components/src/app/components/avatar/models/avatar.model.ts +52 -0
- package/projects/carriera-intern-components/src/app/components/avatar/models/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/avatar/pipes/avatar-classes.pipe.ts +98 -0
- package/projects/carriera-intern-components/src/app/components/avatar/pipes/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/avatar/pipes/initials.pipe.ts +31 -0
- package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.css +0 -0
- package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.html +10 -0
- package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.ts +25 -0
- package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.stories.ts +65 -0
- package/projects/carriera-intern-components/src/app/components/copy/copy.component.html +66 -0
- package/projects/carriera-intern-components/src/app/components/copy/copy.component.scss +103 -0
- package/projects/carriera-intern-components/src/app/components/copy/copy.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/copy/copy.component.ts +57 -0
- package/projects/carriera-intern-components/src/app/components/copy/stories/copy.stories.ts +170 -0
- package/projects/carriera-intern-components/src/app/components/counter/counter.component.html +33 -0
- package/projects/carriera-intern-components/src/app/components/counter/counter.component.scss +197 -0
- package/projects/carriera-intern-components/src/app/components/counter/counter.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/counter/counter.component.ts +219 -0
- package/projects/carriera-intern-components/src/app/components/counter/counter.stories.ts +65 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.html +223 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.scss +792 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.ts +323 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.stories.ts +409 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/helpers/dispatch-dropdown.helper.ts +248 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/interfaces/dispatch-dropdown-config.interface.ts +10 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/interfaces/dispatch-dropdown-option.interface.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/interfaces/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/mock/parking-data.json +1550 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/pipes/dispatch-search-filter.pipe.ts +26 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.html +76 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.scss +141 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.ts +268 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.stories.ts +184 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/interfaces/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/interfaces/last-status-data.interface.ts +6 -0
- package/projects/carriera-intern-components/src/app/components/dispatch-location/pipes/last-status-format.pipe.ts +35 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.html +229 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.scss +1115 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.ts +277 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.stories.ts +256 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/interfaces/document-tag.interface.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/interfaces/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/utils/config/button-actions.config.ts +30 -0
- package/projects/carriera-intern-components/src/app/components/document-preview/utils/config/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.html +376 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.scss +9 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.ts +1272 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.stories.ts +1253 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/enums/drop-zone-labels.enum.ts +0 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/enums/drop-zone-variant.enum.ts +7 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/enums/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/models/app-file.model.ts +28 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/models/file.response.ts +10 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/models/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/pipes/drag-mode-animation.pipe.ts +40 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/helpers/drop-zone-documents.helper.ts +67 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/helpers/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-cropper.scss +202 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-documents.scss +166 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-drag-mode.scss +107 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-images.scss +106 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-layout.scss +208 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-states.scss +183 -0
- package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-variations.scss +189 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/helpers/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/helpers/mask.helper.ts +52 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/mask.directive.spec.ts +13 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/mask.directive.ts +274 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/number-format.directive.spec.ts +13 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/number-format.directive.ts +442 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/password.directive.spec.ts +13 -0
- package/projects/carriera-intern-components/src/app/components/input/directives/password.directive.ts +282 -0
- package/projects/carriera-intern-components/src/app/components/input/input.component.html +2669 -0
- package/projects/carriera-intern-components/src/app/components/input/input.component.scss +3000 -0
- package/projects/carriera-intern-components/src/app/components/input/input.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/input/input.component.ts +1486 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/banks.json +249 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/basic.json +42 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/brokers.json +544 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/colors.json +95 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/commodities.json +12 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/contacts.json +117 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/dispatchers.json +83 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/dispatches.json +4188 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/fuel-list-dropdown.json +968 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/fuel-transaction.json +78 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/fuelcard.json +472 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/hazardous.json +166 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/labelColors.json +81 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/labels.json +169 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/new-load-modal-res.json +1148 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/noboard.json +1665 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/owner.json +209 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/pm.json +112 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/shipper.json +1192 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/split-driver.json +99 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/split-trailer.json +79 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/split-truck.json +49 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/states.json +605 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/toll.json +106 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/trailermakes.json +196 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/truck_trailer.json +184 -0
- package/projects/carriera-intern-components/src/app/components/input/mock/truckmakes.json +76 -0
- package/projects/carriera-intern-components/src/app/components/input/models/dropdown.model.ts +376 -0
- package/projects/carriera-intern-components/src/app/components/input/models/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/input/models/input.model.ts +227 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/broker-progress.pipe.ts +36 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/clear-tooltip.pipe.ts +38 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/error-message.pipe.ts +54 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/highlight-search.pipe.ts +42 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/index.ts +6 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/input-class.pipe.ts +109 -0
- package/projects/carriera-intern-components/src/app/components/input/pipes/remap-pm-icons.pipe.ts +49 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/Documentation.mdx +190 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/dropdown-options.ts +80 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/dropdown.stories.ts +376 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input-dropdown.stories.ts +405 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input-inverse.stories.ts +232 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input-load.stories.ts +150 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input-placeholder.stories.ts +225 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input-subcontent.stories.ts +264 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input-table.stories.ts +211 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/input.stories.ts +1159 -0
- package/projects/carriera-intern-components/src/app/components/input/stories/modal.stories.ts +162 -0
- package/projects/carriera-intern-components/src/app/components/input/utilities/constants/cast.constants.ts +91 -0
- package/projects/carriera-intern-components/src/app/components/input/utilities/constants/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/input/utilities/helpers/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/input/utilities/helpers/input.helper.ts +985 -0
- package/projects/carriera-intern-components/src/app/components/input/utilities/helpers/keyboard-navigation.helper.ts +402 -0
- package/projects/carriera-intern-components/src/app/components/input/utilities/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/input-address/enums/input-address-layers-string.enum.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/input-address/enums/input-address-type-string.enum.ts +7 -0
- package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.html +13 -0
- package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.scss +0 -0
- package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.ts +509 -0
- package/projects/carriera-intern-components/src/app/components/input-address/models/address-data.model.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/input-address/models/address-list.model.ts +6 -0
- package/projects/carriera-intern-components/src/app/components/input-address/models/long-lat.model.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/input-address/models/sent-address-data.model.ts +25 -0
- package/projects/carriera-intern-components/src/app/components/input-address/stories/address.stories.ts +181 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.component.html +180 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.component.scss +862 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.component.ts +1559 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.stories.ts +507 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.html +134 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.scss +0 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.spec.ts +24 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.ts +331 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.html +190 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.scss +0 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.spec.ts +26 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.ts +234 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.html +23 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.scss +0 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.spec.ts +26 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.ts +60 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.html +27 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.scss +0 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.spec.ts +26 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.ts +187 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.html +68 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.scss +0 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.spec.ts +26 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.ts +163 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/config/cai-input.config.ts +193 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/config/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-left-string.enum.ts +5 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-list-preview-string.enum.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-main-string.enum.ts +5 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-scroll-type-string.enum.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-string.enum.ts +6 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-type-string.enum.ts +3 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/config.enum.ts +7 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/models/scroll-change.model.ts +6 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/models/scroll-type.model.ts +8 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/pipes/calendar-months.pipe.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/services/calendar-datetime-picker.service.ts +35 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/strategy/calendar-strategy.ts +120 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/utils/constants/custom-datetime-pickers.constants.ts +48 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/enums/input-config-name-string.enum.ts +7 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/interfaces/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/interfaces/input-datetime.interface.ts +11 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/models/index.ts +5 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/models/label-color.model.ts +11 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-clear-class.pipe.ts +105 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-date-time-container-class.pipe.ts +66 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-dropdown-arrow-class.pipe.ts +68 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-placeholder-icon.class.pipe.ts +68 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/show-clear.pipe.ts +20 -0
- package/projects/carriera-intern-components/src/app/components/input-datetime-picker/scss/ca-input.colors.scss +287 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.html +194 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.scss +613 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.ts +208 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.stories.ts +52 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/mock/brokerContacts.json +74 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/models/contact.interface.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/contact-count.pipe.ts +14 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/contacts-height.pipe.ts +34 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/departments-height.pipe.ts +57 -0
- package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/map-contacts.pipe.ts +51 -0
- package/projects/carriera-intern-components/src/app/components/pm/mock/repair-pm.json +2743 -0
- package/projects/carriera-intern-components/src/app/components/pm/pm.component.html +82 -0
- package/projects/carriera-intern-components/src/app/components/pm/pm.component.scss +260 -0
- package/projects/carriera-intern-components/src/app/components/pm/pm.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/pm/pm.component.ts +207 -0
- package/projects/carriera-intern-components/src/app/components/pm/pm.stories.ts +104 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/enums/filter-type.enum.ts +7 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/enums/review-type.enum.ts +5 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/pipes/date-formating.pipe.spec.ts +8 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/pipes/date-formating.pipe.ts +42 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.html +57 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.scss +94 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.ts +105 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.stories.ts +451 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/review-modal/review-modal.component.html +236 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/review-modal/review-modal.component.scss +564 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/review-modal/review-modal.component.ts +360 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/single-review/single-review.component.html +321 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/single-review/single-review.component.scss +887 -0
- package/projects/carriera-intern-components/src/app/components/rating_review/single-review/single-review.component.ts +159 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/interfaces/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/interfaces/selected-business-field.interface.ts +11 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.html +100 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.scss +239 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.ts +28 -0
- package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.stories.ts +132 -0
- package/projects/carriera-intern-components/src/app/components/signature/signature.component.html +63 -0
- package/projects/carriera-intern-components/src/app/components/signature/signature.component.scss +229 -0
- package/projects/carriera-intern-components/src/app/components/signature/signature.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/signature/signature.component.ts +102 -0
- package/projects/carriera-intern-components/src/app/components/signature/signature.stories.ts +32 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/enums/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/enums/scroll-state.enum.ts +6 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.html +29 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.scss +106 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.ts +458 -0
- package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.stories.ts +343 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/interfaces/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/interfaces/tab-option-config.interface.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/interfaces/tab-option.interface.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/pipes/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/pipes/tab-search-filter.pipe.ts +20 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.html +66 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.scss +441 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.ts +105 -0
- package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option.stories.ts +93 -0
- package/projects/carriera-intern-components/src/app/components/text-area/interfaces/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/text-area/interfaces/text-area.interface.ts +4 -0
- package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.html +29 -0
- package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.scss +294 -0
- package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.spec.ts +23 -0
- package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.ts +213 -0
- package/projects/carriera-intern-components/src/app/components/text-area/text-area.stories.ts +90 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interfaces/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interfaces/interval-dropdown-option.interface.ts +10 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.html +98 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.scss +437 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.spec.ts +22 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.ts +160 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.stories.ts +77 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/pipes/dropdown-filter-input-config.pipe.ts +52 -0
- package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/utils/helpers/interval-dropdown.helper.ts +193 -0
- package/projects/carriera-intern-components/src/app/directives/hover-svg-directives.ts +49 -0
- package/projects/carriera-intern-components/src/app/directives/index.ts +3 -0
- package/projects/carriera-intern-components/src/app/directives/infinite-scroll.directive.ts +64 -0
- package/projects/carriera-intern-components/src/app/directives/intersection-observer.directive.ts +50 -0
- package/projects/carriera-intern-components/src/app/enums/alignment.enum.ts +4 -0
- package/projects/carriera-intern-components/src/app/enums/general-actions.enum.ts +71 -0
- package/projects/carriera-intern-components/src/app/enums/index.ts +3 -0
- package/projects/carriera-intern-components/src/app/enums/string-placeholder.enum.ts +3 -0
- package/projects/carriera-intern-components/src/app/models/pm.model.ts +11 -0
- package/projects/carriera-intern-components/src/app/models/review.model.ts +29 -0
- package/projects/carriera-intern-components/src/app/models/truck.model.ts +5 -0
- package/projects/carriera-intern-components/src/app/pipes/bytes-to-human-readable.pipe.spec.ts +8 -0
- package/projects/carriera-intern-components/src/app/pipes/bytes-to-human-readable.pipe.ts +29 -0
- package/projects/carriera-intern-components/src/app/pipes/currency.pipe.spec.ts +8 -0
- package/projects/carriera-intern-components/src/app/pipes/currency.pipe.ts +61 -0
- package/projects/carriera-intern-components/src/app/pipes/number-format.pipe.spec.ts +8 -0
- package/projects/carriera-intern-components/src/app/pipes/number-format.pipe.ts +30 -0
- package/projects/carriera-intern-components/src/app/services/document.service.spec.ts +16 -0
- package/projects/carriera-intern-components/src/app/services/document.service.ts +168 -0
- package/projects/carriera-intern-components/src/app/utils/autofill-validators.ts +32 -0
- package/projects/carriera-intern-components/src/app/utils/constants/index.ts +1 -0
- package/projects/carriera-intern-components/src/app/utils/constants/input-character-sets.constants.ts +142 -0
- package/projects/carriera-intern-components/src/app/utils/index.ts +2 -0
- package/projects/carriera-intern-components/src/app/validators/custom-validators.ts +45 -0
- package/projects/carriera-intern-components/src/public-api.ts +31 -0
- package/projects/carriera-intern-components/src/styles/README.md +59 -0
- package/projects/carriera-intern-components/src/styles/_variables.scss +301 -0
- package/projects/carriera-intern-components/src/styles/cropper.scss +39 -0
- package/projects/carriera-intern-components/src/styles/custompickers.scss +827 -0
- package/projects/carriera-intern-components/src/styles/popover.scss +224 -0
- package/projects/carriera-intern-components/src/styles/review_variables.scss +45 -0
- package/projects/carriera-intern-components/src/styles/tooltip.scss +119 -0
- package/projects/carriera-intern-components/src/styles/utility/colors.scss +265 -0
- package/projects/carriera-intern-components/src/styles/utility/utilities.scss +17 -0
- package/projects/carriera-intern-components/src/styles.scss +43 -0
- package/projects/carriera-intern-components/tsconfig.lib.json +15 -0
- package/projects/carriera-intern-components/tsconfig.lib.prod.json +11 -0
- package/projects/carriera-intern-components/tsconfig.spec.json +15 -0
- package/tsconfig.json +33 -0
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Directive,
|
|
3
|
+
ElementRef,
|
|
4
|
+
HostListener,
|
|
5
|
+
input,
|
|
6
|
+
OnInit,
|
|
7
|
+
} from '@angular/core';
|
|
8
|
+
import { MaskHelper } from './helpers';
|
|
9
|
+
|
|
10
|
+
@Directive({
|
|
11
|
+
selector: '[appPassword]',
|
|
12
|
+
})
|
|
13
|
+
export class PasswordDirective implements OnInit {
|
|
14
|
+
/**
|
|
15
|
+
* Input property to enable or disable the password masking behavior.
|
|
16
|
+
*/
|
|
17
|
+
appPassword = input<boolean>(true);
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Input property to hide or show the password
|
|
21
|
+
*/
|
|
22
|
+
visible = input<boolean>(false);
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Input property to specify the type of the password
|
|
26
|
+
*/
|
|
27
|
+
account = input<boolean>(false);
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Input property to specify how many characters from the end of the
|
|
31
|
+
* password should be revealed. Defaults to 0 (fully masked).
|
|
32
|
+
*/
|
|
33
|
+
reveal = input<number>(0);
|
|
34
|
+
|
|
35
|
+
appMask = input<string>('');
|
|
36
|
+
|
|
37
|
+
max = input<number | undefined>(0);
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Stores the actual, unmasked password value,
|
|
41
|
+
* while the input element displays a masked version.
|
|
42
|
+
*/
|
|
43
|
+
private realValue: string = '';
|
|
44
|
+
|
|
45
|
+
constructor(private el: ElementRef<HTMLInputElement>) {}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Lifecycle hook called after Angular initializes the directive's data-bound properties.
|
|
49
|
+
* If password masking is enabled, it sets up the initial masking.
|
|
50
|
+
*/
|
|
51
|
+
ngOnInit(): void {
|
|
52
|
+
if (this.appPassword() && this.reveal() > 0) {
|
|
53
|
+
this.setupPasswordMasking();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Sets up the initial state for password masking.
|
|
59
|
+
* It reads the initial value from the input (if any) as the `realValue`
|
|
60
|
+
* and then updates the input's display to show the masked version.
|
|
61
|
+
*/
|
|
62
|
+
private setupPasswordMasking(): void {
|
|
63
|
+
const input = this.el.nativeElement;
|
|
64
|
+
this.realValue = input.value || ''; // Assume initial value is unmasked or is the real one
|
|
65
|
+
this.updateDisplayValue();
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* HostListener for the 'input' event on the host element.
|
|
70
|
+
* This is the core logic for synchronizing `realValue` with user input
|
|
71
|
+
* on the masked field. It infers changes to `realValue`
|
|
72
|
+
* based on `event.data`, cursor position, and the difference in length
|
|
73
|
+
* between the input's current display value and the previous `realValue`.
|
|
74
|
+
* @param event - The InputEvent object.
|
|
75
|
+
*/
|
|
76
|
+
@HostListener('input', ['$event'])
|
|
77
|
+
onInput(event: InputEvent): void {
|
|
78
|
+
if (!this.appPassword() || !this.reveal()) return;
|
|
79
|
+
const input = this.el.nativeElement;
|
|
80
|
+
let cursorPosition = input.selectionStart || 0;
|
|
81
|
+
const displayValue = input.value;
|
|
82
|
+
const lengthDiff = displayValue.length - this.realValue.length;
|
|
83
|
+
let newRealValue = this.realValue;
|
|
84
|
+
|
|
85
|
+
if (event.data && lengthDiff <= 0) {
|
|
86
|
+
const deletedCount = Math.abs(lengthDiff) + event.data.length;
|
|
87
|
+
const replaceStart = cursorPosition - event.data.length;
|
|
88
|
+
newRealValue =
|
|
89
|
+
this.realValue.slice(0, Math.max(0, replaceStart)) +
|
|
90
|
+
event.data +
|
|
91
|
+
this.realValue.slice(Math.max(0, replaceStart) + deletedCount);
|
|
92
|
+
} else if (lengthDiff > 0) {
|
|
93
|
+
const addedChars =
|
|
94
|
+
event.data ||
|
|
95
|
+
displayValue.slice(cursorPosition - lengthDiff, cursorPosition);
|
|
96
|
+
const insertPosition = cursorPosition - addedChars.length;
|
|
97
|
+
newRealValue =
|
|
98
|
+
this.realValue.slice(0, Math.max(0, insertPosition)) +
|
|
99
|
+
addedChars +
|
|
100
|
+
this.realValue.slice(Math.max(0, insertPosition));
|
|
101
|
+
} else if (lengthDiff < 0) {
|
|
102
|
+
const deletedCount = Math.abs(lengthDiff);
|
|
103
|
+
newRealValue =
|
|
104
|
+
this.realValue.slice(0, cursorPosition) +
|
|
105
|
+
this.realValue.slice(cursorPosition + deletedCount);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// Only enforce numeric input if account() is true
|
|
109
|
+
if (this.account() && !/^\d*$/.test(newRealValue)) {
|
|
110
|
+
// Revert the input field to the previous masked value and restore cursor
|
|
111
|
+
this.updateDisplayValue();
|
|
112
|
+
this.setCursorPosition(cursorPosition - 1); // Move cursor back
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (this.max()) {
|
|
117
|
+
if (newRealValue.length > this.max()!) {
|
|
118
|
+
this.updateDisplayValue();
|
|
119
|
+
this.setCursorPosition(cursorPosition - 1); // Move cursor back
|
|
120
|
+
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
if (this.appMask() && this.appMask() !== '') {
|
|
126
|
+
const { formattedValue } = MaskHelper.applyMask(
|
|
127
|
+
MaskHelper.extractUserInput(newRealValue),
|
|
128
|
+
this.appMask()
|
|
129
|
+
);
|
|
130
|
+
cursorPosition =
|
|
131
|
+
cursorPosition + formattedValue.length - newRealValue.length;
|
|
132
|
+
newRealValue = formattedValue;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
this.realValue = newRealValue;
|
|
136
|
+
|
|
137
|
+
this.updateDisplayValue();
|
|
138
|
+
this.setCursorPosition(cursorPosition);
|
|
139
|
+
this.dispatchRealValueChange();
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* HostListener for the 'cut' event.
|
|
144
|
+
* Prevents default cut behavior to operate on `realValue`.
|
|
145
|
+
* It copies the corresponding part of `realValue` to the clipboard
|
|
146
|
+
* and updates `realValue` and the display.
|
|
147
|
+
* @param event - The ClipboardEvent object.
|
|
148
|
+
*/
|
|
149
|
+
@HostListener('cut', ['$event'])
|
|
150
|
+
onCut(event: ClipboardEvent): void {
|
|
151
|
+
if (!this.appPassword() || !this.reveal()) return;
|
|
152
|
+
|
|
153
|
+
const input = this.el.nativeElement;
|
|
154
|
+
const start = input.selectionStart || 0;
|
|
155
|
+
const end = input.selectionEnd || 0;
|
|
156
|
+
|
|
157
|
+
if (start !== end) {
|
|
158
|
+
// If there's a selection
|
|
159
|
+
event.preventDefault(); // Prevent default cut action
|
|
160
|
+
const cutText = this.realValue.slice(start, end); // Cut from realValue
|
|
161
|
+
event.clipboardData?.setData('text/plain', cutText);
|
|
162
|
+
|
|
163
|
+
this.realValue =
|
|
164
|
+
this.realValue.slice(0, start) + this.realValue.slice(end);
|
|
165
|
+
|
|
166
|
+
this.updateDisplayValue();
|
|
167
|
+
this.setCursorPosition(start); // Set cursor to the start of the cut area
|
|
168
|
+
this.dispatchRealValueChange();
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* HostListener for the 'copy' event.
|
|
174
|
+
* Prevents default copy behavior to ensure the unmasked `realValue` segment is copied.
|
|
175
|
+
* @param event - The ClipboardEvent object.
|
|
176
|
+
*/
|
|
177
|
+
@HostListener('copy', ['$event'])
|
|
178
|
+
onCopy(event: ClipboardEvent): void {
|
|
179
|
+
if (!this.appPassword() || !this.reveal()) return;
|
|
180
|
+
|
|
181
|
+
const input = this.el.nativeElement;
|
|
182
|
+
const start = input.selectionStart || 0;
|
|
183
|
+
const end = input.selectionEnd || 0;
|
|
184
|
+
|
|
185
|
+
if (start !== end) {
|
|
186
|
+
// If there's a selection
|
|
187
|
+
event.preventDefault(); // Prevent default copy action
|
|
188
|
+
const copiedText = this.realValue.slice(start, end); // Copy from realValue
|
|
189
|
+
event.clipboardData?.setData('text/plain', copiedText);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* Updates the input element's display value with a masked version of `realValue`.
|
|
195
|
+
* Uses '•' for masked characters. Respects the `reveal` input to show
|
|
196
|
+
* a specified number of characters from the end of the password.
|
|
197
|
+
* This method is responsible for creating the visual masking.
|
|
198
|
+
*/
|
|
199
|
+
private updateDisplayValue(): void {
|
|
200
|
+
if (!this.appPassword() || !this.reveal()) return;
|
|
201
|
+
if (this.visible()) {
|
|
202
|
+
this.el.nativeElement.value = this.realValue;
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
const revealCount = this.reveal();
|
|
207
|
+
const realLength = this.realValue.length;
|
|
208
|
+
let displayValue = '';
|
|
209
|
+
|
|
210
|
+
if (revealCount > 0 && realLength > revealCount) {
|
|
211
|
+
const actualRevealCount = Math.min(revealCount, realLength);
|
|
212
|
+
// Calculate how many characters to mask
|
|
213
|
+
const maskedCharsCount = realLength - actualRevealCount;
|
|
214
|
+
|
|
215
|
+
if (maskedCharsCount > 0) {
|
|
216
|
+
// Get the part of the real value that should be revealed
|
|
217
|
+
const revealedPart = this.realValue.slice(maskedCharsCount); // Corrected from slice(realLength - actualRevealCount)
|
|
218
|
+
displayValue = '•'.repeat(maskedCharsCount) + revealedPart;
|
|
219
|
+
} else {
|
|
220
|
+
// If all characters are to be revealed (revealCount >= realLength)
|
|
221
|
+
displayValue = this.realValue;
|
|
222
|
+
}
|
|
223
|
+
} else {
|
|
224
|
+
// Fully mask if revealCount is 0 or realValue is lesser than revealCount
|
|
225
|
+
displayValue = '•'.repeat(realLength);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
this.el.nativeElement.value = displayValue;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Sets the cursor position within the input field.
|
|
233
|
+
* This is crucial after `updateDisplayValue` changes the entire input value,
|
|
234
|
+
* to maintain a natural cursor behavior for the user.
|
|
235
|
+
* Uses `setTimeout` to ensure the operation occurs after Angular's view update.
|
|
236
|
+
* @param position - The desired cursor position.
|
|
237
|
+
*/
|
|
238
|
+
private setCursorPosition(position: number): void {
|
|
239
|
+
const input = this.el.nativeElement;
|
|
240
|
+
// setTimeout ensures this runs after the current browser rendering tick
|
|
241
|
+
setTimeout(() => {
|
|
242
|
+
// Clamp position to be within the bounds of the current display value's length
|
|
243
|
+
const currentLength = input.value.length;
|
|
244
|
+
const newPosition = Math.max(0, Math.min(position, currentLength));
|
|
245
|
+
input.setSelectionRange(newPosition, newPosition);
|
|
246
|
+
}, 0);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* Dispatches a custom event named 'realValueChange' from the host element.
|
|
251
|
+
* The event's `detail` property contains the unmasked `realValue`.
|
|
252
|
+
* This allows parent components (like your `InputComponent`) to listen for
|
|
253
|
+
* changes to the actual password.
|
|
254
|
+
*/
|
|
255
|
+
private dispatchRealValueChange(): void {
|
|
256
|
+
const customEvent = new CustomEvent('realValueChange', {
|
|
257
|
+
bubbles: true, // Allows event to bubble up the DOM
|
|
258
|
+
composed: true, // Allows event to cross Shadow DOM boundaries
|
|
259
|
+
detail: this.realValue,
|
|
260
|
+
});
|
|
261
|
+
this.el.nativeElement.dispatchEvent(customEvent);
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* Public method to get the current unmasked "real" password value.
|
|
266
|
+
* @returns The real password value as a string.
|
|
267
|
+
*/
|
|
268
|
+
getRealValue(): string {
|
|
269
|
+
return this.realValue;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
/**
|
|
273
|
+
* Public method to set the "real" password value from outside the directive
|
|
274
|
+
* (e.g., when the parent form control's value is changed programmatically).
|
|
275
|
+
* It updates the internal `realValue` and then refreshes the masked display.
|
|
276
|
+
* @param value - The new real password value to set.
|
|
277
|
+
*/
|
|
278
|
+
setRealValue(value: string): void {
|
|
279
|
+
this.realValue = value || '';
|
|
280
|
+
this.updateDisplayValue();
|
|
281
|
+
}
|
|
282
|
+
}
|