{"version":3,"sources":["jsdelivr-header.js","/npm/projects/ng-inputs/src/lib/core/ng-input-config.service.ts","/npm/projects/ng-inputs/src/lib/core/MASKS.ts","/npm/projects/ng-inputs/src/lib/core/ng-input-masks.service.ts","/npm/node_modules/tslib/tslib.es6.js","/npm/projects/ng-inputs/src/lib/ng-select/select-custom-control-value-accessor.domain.ts","/npm/projects/ng-inputs/src/lib/ng-select/ng-search/ng-search.component.ts","/npm/projects/ng-inputs/src/lib/ng-select/ng-select/ng-select.component.ts","/npm/projects/ng-inputs/src/lib/core/pipe/ng-mask.pipe.ts","/npm/projects/ng-inputs/src/lib/core/pipe/ng-pipe.module.ts","/npm/projects/ng-inputs/src/lib/core/ng-core.module.ts","/npm/projects/ng-inputs/src/lib/core/directive/select.directive.ts","/npm/projects/ng-inputs/src/lib/core/directive/ng-directive.module.ts","/npm/projects/ng-inputs/src/lib/ng-select/ng-select.module.ts","/npm/projects/ng-inputs/src/lib/ng-input/input-custom-control-value-accessor.domain.ts","/npm/projects/ng-inputs/src/lib/ng-input/ng-input/typesInput.ts","/npm/projects/ng-inputs/src/lib/ng-input/ng-input/ng-input.component.ts","/npm/projects/ng-inputs/src/lib/ng-input/ng-text-area/ng-text-area.component.ts","/npm/projects/ng-inputs/src/lib/ng-input/ng-input.module.ts","/npm/projects/ng-inputs/src/lib/ng-checkbox/ng-checkbox.component.ts","/npm/projects/ng-inputs/src/lib/ng-checkbox/ng-checkbox.module.ts","/npm/projects/ng-inputs/src/lib/ng-inputs.module.ts"],"names":[],"mappings":"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","file":"/npm/@douglas-serena/ng-inputs@1.1.44/bundles/douglas-serena-ng-inputs.umd.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@douglas-serena/ng-inputs@1.1.44/bundles/douglas-serena-ng-inputs.umd.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n  providedIn: 'root',\r\n})\r\nexport class NgInputConfigService {\r\n  private _field: IField = {\r\n    type: 'group',\r\n    alignIcons: 'left',\r\n    icons: {\r\n      password: {\r\n        align: 'right',\r\n        clickable: true,\r\n      },\r\n    },\r\n  };\r\n  get field() {\r\n    return this._field;\r\n  }\r\n  set field(value: IField) {\r\n    this._field = {\r\n      ...this._field,\r\n      ...value,\r\n      icons: { ...this._field.icons, ...value.icons },\r\n    };\r\n  }\r\n\r\n  private _theme: 'bootstrap' | 'materialize' = 'bootstrap';\r\n  get theme() {\r\n    return this._theme;\r\n  }\r\n  set theme(value: 'bootstrap' | 'materialize') {\r\n    this._theme = value;\r\n  }\r\n  private _currency: ISimplesMaskMoney = {\r\n    allowNegative: true,\r\n    negativeSignAfter: false,\r\n    prefix: '',\r\n    suffix: '',\r\n    fixed: true,\r\n    fractionDigits: 2,\r\n    decimalSeparator: ',',\r\n    thousandsSeparator: '.',\r\n    align: 'right',\r\n    cursor: 'end',\r\n  };\r\n  get currency() {\r\n    return this._currency;\r\n  }\r\n  set currency(value: ISimplesMaskMoney) {\r\n    this._currency = {\r\n      ...this._currency,\r\n      ...value,\r\n      suffix: value.suffix?.trim(),\r\n      prefix: value.prefix?.trim(),\r\n    };\r\n  }\r\n  private _percent: ISimplesMaskMoney = {\r\n    allowNegative: true,\r\n    negativeSignAfter: false,\r\n    prefix: '',\r\n    suffix: '%',\r\n    fixed: true,\r\n    fractionDigits: 2,\r\n    decimalSeparator: '.',\r\n    thousandsSeparator: '',\r\n    align: 'right',\r\n    cursor: 'end',\r\n  };\r\n  get percent() {\r\n    return this._percent;\r\n  }\r\n  set percent(value: ISimplesMaskMoney) {\r\n    this._percent = {\r\n      ...this._percent,\r\n      ...value,\r\n      suffix: value.suffix?.trim(),\r\n      prefix: value.prefix?.trim(),\r\n    };\r\n  }\r\n  private _environments = {\r\n    debug: false,\r\n    url: 'http://localhost:4200',\r\n  };\r\n  get environments() {\r\n    return this._environments;\r\n  }\r\n  set environments(value: IEnvironments) {\r\n    this._environments = { ...this._environments, ...value };\r\n  }\r\n}\r\n\r\nexport interface INgInputConfig {\r\n  field?: IField;\r\n  theme?: 'bootstrap' | 'materialize';\r\n  currency?: ISimplesMaskMoney;\r\n  percent?: ISimplesMaskMoney;\r\n  environments?: IEnvironments;\r\n}\r\n\r\ninterface IField {\r\n  type?: 'floating' | 'group';\r\n  alignIcons?: 'right' | 'left';\r\n  icons?: {\r\n    [key: string]: {\r\n      icon?: string;\r\n      align?: 'left' | 'right';\r\n      clickable?: boolean;\r\n    };\r\n  };\r\n}\r\n\r\ninterface IEnvironments {\r\n  debug?: boolean;\r\n  url?: string;\r\n  [key: string]: any;\r\n}\r\ninterface ISimplesMaskMoney {\r\n  allowNegative?: boolean;\r\n  negativeSignAfter?: boolean;\r\n  prefix?: string;\r\n  suffix?: string;\r\n  fixed?: boolean;\r\n  fractionDigits?: number;\r\n  decimalSeparator?: string;\r\n  thousandsSeparator?: string;\r\n  cursor?: 'end' | 'move' | 'start';\r\n  align?: 'left' | 'right';\r\n}\r\n","import IMask from 'imask';\r\n\r\nexport const TEL = {\r\n  mask: [{ mask: '(00) 0000-0000' }, { mask: '(00) 0 0000-0000' }],\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const CPF = {\r\n  mask: '000.000.000-00',\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const CNPJ = {\r\n  mask: '00.000.000/0000-00',\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const CPF_CNPJ = {\r\n  mask: [CPF, CNPJ],\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const RG = {\r\n  mask: '00.000.000-0',\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const ESTADUAL = {\r\n  mask: '00.0.000.0000000-0',\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const RG_ESTADUAL = {\r\n  mask: [RG, ESTADUAL],\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const ZIPCODE = {\r\n  mask: '00000-000',\r\n} as IMask.AnyMaskedOptions;\r\n\r\nexport const typesCustom = [\r\n  ...[\r\n    'ZIPCODE',\r\n    'TEL',\r\n    'RG',\r\n    'RG_ESTADUAL',\r\n    'CPF_CNPJ',\r\n    'CNPJ',\r\n    'CPF',\r\n    'ESTADUAL',\r\n  ],\r\n];\r\nexport const MASKS = {\r\n  ZIPCODE,\r\n  TEL,\r\n  RG,\r\n  RG_ESTADUAL,\r\n  CPF_CNPJ,\r\n  CNPJ,\r\n  CPF,\r\n  ESTADUAL,\r\n  typesCustom,\r\n};\r\n","import { DatePipe } from '@angular/common';\r\nimport { Injectable } from '@angular/core';\r\n\r\nimport IMask from 'imask';\r\nimport SimpleMaskMoney from 'simple-mask-money';\r\nimport { NgInputConfigService } from './ng-input-config.service';\r\n\r\nimport calcJs from '@douglas-serena/calc.js';\r\nimport { MASKS } from './MASKS';\r\n\r\n@Injectable({\r\n  providedIn: 'root',\r\n})\r\nexport class NgInputMasksService {\r\n  constructor(\r\n    private configService: NgInputConfigService,\r\n    private datePipe: DatePipe\r\n  ) {}\r\n\r\n  format(value: string | number, masksType?: string, options?: IOptions) {\r\n    masksType = masksType.toUpperCase();\r\n    if (masksType === 'DATE') {\r\n      return this.datePipe.transform(\r\n        value,\r\n        options?.mask === undefined ? 'dd/MM/yyyy' : options.mask\r\n      );\r\n    }\r\n    if (masksType === 'CURRENCY' || masksType === 'PERCENT') {\r\n      const config = this.configService[masksType.toLowerCase()];\r\n      if (options?.allowNegative !== undefined)\r\n        config.allowNegative = options.allowNegative;\r\n\r\n      value = calcJs(`${value}`.replace(/[,.]/g, '.'))\r\n        .toString()\r\n        .replace('.', config.decimalSeparator as string)\r\n        .replace((config.decimalSeparator as string) + '00', '');\r\n\r\n      return SimpleMaskMoney.formatToCurrency(value, config);\r\n    }\r\n    if (masksType === 'AMOUNT') {\r\n      value = `${value}`;\r\n\r\n      if (/^0/g.test(value)) {\r\n        value = value.replace(/0+/, '');\r\n      }\r\n\r\n      let result = Number(value);\r\n\r\n      if (Number.isNaN(result)) {\r\n        result = 0;\r\n      }\r\n\r\n      return result.toFixed(3);\r\n    }\r\n\r\n    let mask: any = null;\r\n    if (masksType) mask = MASKS[masksType as any];\r\n    if (options?.mask) {\r\n      mask = {\r\n        mask: options?.mask.split('|').map((mask) => ({\r\n          mask,\r\n        })),\r\n      } as IMask.AnyMaskedOptions;\r\n    }\r\n\r\n    return IMask.pipe(value, mask);\r\n  }\r\n\r\n  set(element: HTMLInputElement, masksType: string, options?: IOptions) {\r\n    masksType = masksType.toUpperCase();\r\n    if (masksType === 'CURRENCY' || masksType === 'PERCENT') {\r\n      const config = this.configService[masksType.toLowerCase()];\r\n      if (options?.allowNegative !== undefined)\r\n        config.allowNegative = options.allowNegative;\r\n      return SimpleMaskMoney.setMask(element, config);\r\n    }\r\n\r\n    let mask: any = null;\r\n    if (masksType) {\r\n      mask = MASKS[masksType as any];\r\n    }\r\n    if (options?.mask) {\r\n      mask = {\r\n        mask: options?.mask.split('|').map((mask) => ({\r\n          mask,\r\n        })),\r\n      } as IMask.AnyMaskedOptions;\r\n    }\r\n\r\n    return IMask(element, mask);\r\n  }\r\n}\r\n\r\ninterface IOptions {\r\n  allowNegative?: boolean;\r\n  mask?: string;\r\n}\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n    extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n    return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n    if (typeof b !== \"function\" && b !== null)\r\n        throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n    extendStatics(d, b);\r\n    function __() { this.constructor = d; }\r\n    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n    __assign = Object.assign || function __assign(t) {\r\n        for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n            s = arguments[i];\r\n            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n        }\r\n        return t;\r\n    }\r\n    return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n    var t = {};\r\n    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n        t[p] = s[p];\r\n    if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n                t[p[i]] = s[p[i]];\r\n        }\r\n    return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n    return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n    if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n    return new (P || (P = Promise))(function (resolve, reject) {\r\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n    });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n    return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n    function verb(n) { return function (v) { return step([n, v]); }; }\r\n    function step(op) {\r\n        if (f) throw new TypeError(\"Generator is already executing.\");\r\n        while (_) try {\r\n            if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n            if (y = 0, t) op = [op[0] & 2, t.value];\r\n            switch (op[0]) {\r\n                case 0: case 1: t = op; break;\r\n                case 4: _.label++; return { value: op[1], done: false };\r\n                case 5: _.label++; y = op[1]; op = [0]; continue;\r\n                case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n                default:\r\n                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n                    if (t[2]) _.ops.pop();\r\n                    _.trys.pop(); continue;\r\n            }\r\n            op = body.call(thisArg, _);\r\n        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n    }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n    if (k2 === undefined) k2 = k;\r\n    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n    if (k2 === undefined) k2 = k;\r\n    o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n    for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n    var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n    if (m) return m.call(o);\r\n    if (o && typeof o.length === \"number\") return {\r\n        next: function () {\r\n            if (o && i >= o.length) o = void 0;\r\n            return { value: o && o[i++], done: !o };\r\n        }\r\n    };\r\n    throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n    var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n    if (!m) return o;\r\n    var i = m.call(o), r, ar = [], e;\r\n    try {\r\n        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n    }\r\n    catch (error) { e = { error: error }; }\r\n    finally {\r\n        try {\r\n            if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n        }\r\n        finally { if (e) throw e.error; }\r\n    }\r\n    return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n    for (var ar = [], i = 0; i < arguments.length; i++)\r\n        ar = ar.concat(__read(arguments[i]));\r\n    return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n    for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n    for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n        for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n            r[k] = a[j];\r\n    return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n        if (ar || !(i in from)) {\r\n            if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n            ar[i] = from[i];\r\n        }\r\n    }\r\n    return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n    return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n    if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n    var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n    return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n    function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n    function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n    function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n    function fulfill(value) { resume(\"next\", value); }\r\n    function reject(value) { resume(\"throw\", value); }\r\n    function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n    var i, p;\r\n    return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n    function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n    if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n    var m = o[Symbol.asyncIterator], i;\r\n    return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n    function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n    function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n    if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n    return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n    Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n    o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n    if (mod && mod.__esModule) return mod;\r\n    var result = {};\r\n    if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n    __setModuleDefault(result, mod);\r\n    return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n    return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n    if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n    if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n    return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n    if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n    if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n    if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n    return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { ChangeDetectorRef } from '@angular/core';\r\nimport {\r\n  AfterViewInit,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  HostBinding,\r\n  Input,\r\n  OnInit,\r\n  Output,\r\n  Renderer2,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n  ControlContainer,\r\n  FormControl,\r\n  FormControlDirective,\r\n  SelectControlValueAccessor,\r\n} from '@angular/forms';\r\nimport { NgInputConfigService } from '../core/ng-input-config.service';\r\n\r\ninterface IObject {\r\n  [key: string]: string;\r\n}\r\n\r\ninterface IOnWrite {\r\n  (value: any): void;\r\n}\r\n\r\n@Component({ selector: '', template: '' })\r\nexport class SelectCustomControlValueAccessor\r\n  extends SelectControlValueAccessor\r\n  implements OnInit\r\n{\r\n  @ViewChild(FormControlDirective, { static: true })\r\n  formControlDirective: FormControlDirective;\r\n  @Input() formControl: FormControl;\r\n  @Input() formControlName: string = '';\r\n  @Input() name?: string;\r\n  @Input() disabled = false;\r\n  @Input() help?: string;\r\n\r\n  @Output() public change = new EventEmitter();\r\n  @Output() public blur = new EventEmitter();\r\n  @Output() public focus = new EventEmitter();\r\n\r\n  get _placeholder() {\r\n    return this.field === 'floating' &&\r\n      !!this.label &&\r\n      this.placeholder.length === 0\r\n      ? false\r\n      : this.placeholder;\r\n  }\r\n  @Input() placeholder: string = '';\r\n  @Input() label: string = '';\r\n  _cols: { default: number; lg?: number; md?: number; sm?: number } = {\r\n    default: 12,\r\n    sm: 12,\r\n  };\r\n  @Input() set cols(cols: {\r\n    default?: number;\r\n    lg?: number;\r\n    md?: number;\r\n    sm?: number;\r\n  }) {\r\n    this._cols = { ...this._cols, ...cols };\r\n  }\r\n\r\n  _field: null | 'group' | 'floating' = null;\r\n  @Input() set field(value: 'group' | 'floating') {\r\n    this._field = value;\r\n  }\r\n  get field() {\r\n    return this._field\r\n      ? this._field\r\n      : (this._configService.field.type as 'group' | 'floating');\r\n  }\r\n\r\n  @Input() readonly: boolean = false;\r\n  @Input() required?: boolean;\r\n\r\n  @Input() errors: IObject = {};\r\n\r\n  get control(): FormControl {\r\n    return (this.formControl ||\r\n      this._controlContainer?.control?.get(\r\n        this.formControlName\r\n      )) as FormControl;\r\n  }\r\n\r\n  @HostBinding('class') get classCols() {\r\n    let className =\r\n      this._configService.theme === 'bootstrap'\r\n        ? `col-${this._cols.default}`\r\n        : `col`;\r\n    if (this._cols.lg)\r\n      className +=\r\n        this._configService.theme === 'bootstrap'\r\n          ? ` col-lg-${this._cols.lg}`\r\n          : ` l${this._cols.lg}`;\r\n    if (this._cols.md)\r\n      className +=\r\n        this._configService.theme === 'bootstrap'\r\n          ? ` col-md-${this._cols.md}`\r\n          : ` m${this._cols.md}`;\r\n    if (this._cols.sm)\r\n      className +=\r\n        this._configService.theme === 'bootstrap'\r\n          ? ` col-sm-${this._cols.sm}`\r\n          : ` s${this._cols.sm}`;\r\n    return className;\r\n  }\r\n\r\n  constructor(\r\n    protected _controlContainer: ControlContainer,\r\n    protected elementRef: ElementRef,\r\n    protected renderer: Renderer2,\r\n    private _configService: NgInputConfigService,\r\n    private _changeDetectorRef: ChangeDetectorRef\r\n  ) {\r\n    super(renderer, elementRef);\r\n    this.readonly = false;\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.ngOnInitSuper();\r\n\r\n    if (this.disabled) this.control.disable();\r\n    else this.control.enable();\r\n  }\r\n\r\n  ngOnInitSuper() {\r\n    if (this.name === undefined) this.name = this.formControlName;\r\n\r\n    this.validRequired();\r\n  }\r\n\r\n  getMultiLabels(labels: any, label: string[]): any {\r\n    const lastLabel = label.concat([]);\r\n    const rest = label.splice(1, label.length - 1);\r\n\r\n    return lastLabel.length === 1\r\n      ? labels?.[lastLabel[0]]\r\n      : this.getMultiLabels(labels?.[lastLabel[0]], rest);\r\n  }\r\n\r\n  getKeys(errors: IObject) {\r\n    return Object.keys(errors);\r\n  }\r\n\r\n  getError(key: string) {\r\n    return this.control?.errors?.[key] && this.control?.touched;\r\n  }\r\n\r\n  validRequired() {\r\n    const value = this.control.value;\r\n    this?.onWrite?.(null);\r\n    this._changeDetectorRef.detectChanges();\r\n    if (this.required === undefined) {\r\n      this.required = this.control.errors?.required;\r\n    }\r\n    this?.onWrite?.(value);\r\n    this._changeDetectorRef.detectChanges();\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.formControlDirective.valueAccessor?.registerOnTouched(fn);\r\n  }\r\n\r\n  onWrite: IOnWrite;\r\n  registerOnChange(fn: IOnWrite): void {\r\n    this.onWrite = fn;\r\n  }\r\n\r\n  time: any = 0;\r\n  writeValue(obj: any): void {\r\n    clearTimeout(this.time);\r\n    this.time = setTimeout(() => {\r\n      this.onWrite(obj);\r\n    });\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport {\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  forwardRef,\r\n  HostListener,\r\n  Input,\r\n  OnInit,\r\n  Output,\r\n  Renderer2,\r\n  SimpleChange,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { NgInputConfigService } from '../../core/ng-input-config.service';\r\nimport { SelectCustomControlValueAccessor } from '../select-custom-control-value-accessor.domain';\r\n\r\n@Component({\r\n  selector: 'dss-search',\r\n  templateUrl: './ng-search.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      multi: true,\r\n      useExisting: forwardRef(() => NgSearchComponent),\r\n    },\r\n  ],\r\n})\r\nexport class NgSearchComponent\r\n  extends SelectCustomControlValueAccessor\r\n  implements OnInit\r\n{\r\n  @ViewChild('inputRef') inputRef: ElementRef<HTMLInputElement>;\r\n  @Input() notFound: string = 'Sem resultado.';\r\n  @Input() pathLabel = 'label';\r\n  @Input() value: any = null;\r\n  @Input() options: any[] = [];\r\n  @Input() uri: string | null = null;\r\n  @Input() responseData: string | null = null;\r\n  @Input() return: string | null = null;\r\n\r\n  loading = false;\r\n  focused = false;\r\n  itemSelect?: number;\r\n\r\n  constructor(\r\n    protected controlContainer: ControlContainer,\r\n    protected elementRef: ElementRef,\r\n    protected renderer: Renderer2,\r\n    private httpClient: HttpClient,\r\n    private configService: NgInputConfigService,\r\n    changeDetectorRef: ChangeDetectorRef\r\n  ) {\r\n    super(\r\n      controlContainer,\r\n      elementRef,\r\n      renderer,\r\n      configService,\r\n      changeDetectorRef\r\n    );\r\n  }\r\n\r\n  timeInput: any = 0;\r\n  @HostListener('input', ['$event'])\r\n  onInput({ target }: Event) {\r\n    clearTimeout(this.timeInput);\r\n    this.timeInput = setTimeout(async () => {\r\n      const { value } = target as HTMLInputElement;\r\n\r\n      if (value.length === 0) return;\r\n      if (!this.focused) this.focused = true;\r\n\r\n      if (this.uri) {\r\n        let uri = this.createUrl(this.uri);\r\n        uri = uri?.replace('{value}', value) as string;\r\n\r\n        this.loading = true;\r\n        try {\r\n          const response = await this.httpClient.get(uri).toPromise();\r\n          this.options = this.responseData\r\n            ? this.getMultiLabels(response, this.responseData.split('.'))\r\n            : response;\r\n          this.format();\r\n        } catch (error) {\r\n          if (!this.configService.environments.debug) {\r\n            console.log(error);\r\n          }\r\n        }\r\n        this.loading = false;\r\n      }\r\n    }, 300);\r\n  }\r\n\r\n  createUrl(uri: string) {\r\n    const variables = uri.match(/(\\{[\\w\\_]+\\})+/g);\r\n    variables?.forEach((variable) => {\r\n      const key = variable.replace(/([\\{\\}])+/g, '');\r\n      const env = this.configService.environments[key];\r\n      if (env) uri = uri?.replace(variable, env) as string;\r\n    });\r\n    return uri;\r\n  }\r\n\r\n  @HostListener('keydown', ['$event'])\r\n  handleKeyDown(event: KeyboardEvent) {\r\n    const { key } = event;\r\n\r\n    const keys = {\r\n      ArrowUp: () => {\r\n        event.preventDefault();\r\n\r\n        if (!this.focused) {\r\n          this.focused = true;\r\n          return;\r\n        }\r\n\r\n        const index = this.options.findIndex((option) => option.dssSelect);\r\n\r\n        if (index === -1) {\r\n          this.options[this.options.length - 1].dssSelect = true;\r\n          return;\r\n        }\r\n\r\n        this.options[index].dssSelect = false;\r\n\r\n        if (index === 0) {\r\n          this.options[this.options.length - 1].dssSelect = true;\r\n          return;\r\n        }\r\n\r\n        this.options[index - 1].dssSelect = true;\r\n      },\r\n      ArrowDown: () => {\r\n        event.preventDefault();\r\n\r\n        if (!this.focused) {\r\n          this.focused = true;\r\n          return;\r\n        }\r\n\r\n        const index = this.options.findIndex((option) => option.dssSelect);\r\n\r\n        if (index === -1) {\r\n          this.options[0].dssSelect = true;\r\n        }\r\n        this.options[index].dssSelect = false;\r\n\r\n        if (index === this.options.length - 1) {\r\n          this.options[0].dssSelect = true;\r\n          return;\r\n        }\r\n\r\n        this.options[index + 1].dssSelect = true;\r\n      },\r\n      Enter: () => {\r\n        event.preventDefault();\r\n\r\n        if (!this.focused) {\r\n          this.focused = true;\r\n          return;\r\n        }\r\n\r\n        const index = this.options.findIndex((option) => option.dssSelect);\r\n        if (index !== -1) {\r\n          this.focused = false;\r\n          this.itemSelect = index;\r\n          this.inputChange(this.options[index]);\r\n        }\r\n      },\r\n    };\r\n    try {\r\n      keys[key as 'ArrowUp']();\r\n    } catch {}\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.required = this.control.errors?.required;\r\n\r\n    if (!this.required)\r\n      this.required = Object.keys(this.errors).includes('required');\r\n    this.format();\r\n  }\r\n\r\n  timeBlur: any = 0;\r\n  @Output() blur = new EventEmitter();\r\n  onBlur(event: Event) {\r\n    clearTimeout(this.timeBlur);\r\n    this.timeBlur = setTimeout(() => {\r\n      this.focused = false;\r\n      this.blur.emit(event);\r\n    }, 300);\r\n  }\r\n\r\n  timeFocus: any = 0;\r\n  @Output() focus = new EventEmitter();\r\n  onFocus(event: Event) {\r\n    this.onInput(event);\r\n    clearTimeout(this.timeFocus);\r\n    this.timeFocus = setTimeout(() => {\r\n      this.focused = true;\r\n      this.focus.emit(event);\r\n    }, 100);\r\n  }\r\n\r\n  ngOnChanges({\r\n    options,\r\n    value,\r\n  }: {\r\n    options: SimpleChange;\r\n    value: SimpleChange;\r\n  }) {\r\n    if (!!options && !!options.currentValue) {\r\n      this.format();\r\n    }\r\n    if (!!value && !!value.currentValue) {\r\n      this.inputChange(this.value);\r\n    }\r\n  }\r\n\r\n  inputChange(value: any) {\r\n    this.control.setValue(\r\n      value instanceof Object\r\n        ? this.getMultiLabels(value, this.pathLabel.split('.'))\r\n        : value\r\n    );\r\n\r\n    if (typeof value === 'string') {\r\n      this.onWrite(value);\r\n    } else {\r\n      const newValue = { ...value };\r\n\r\n      delete newValue.dssLabel;\r\n      delete newValue.dssSelect;\r\n\r\n      setTimeout(() => {\r\n        this.onWrite(\r\n          !!this.return\r\n            ? this.getMultiLabels(newValue, this.return.split('.'))\r\n            : newValue\r\n        );\r\n      }, 250);\r\n    }\r\n  }\r\n\r\n  format() {\r\n    this.options.map((option, index) => {\r\n      option.dssLabel = this.getMultiLabels(option, this.pathLabel.split('.'));\r\n      option.dssSelect = this.itemSelect === index;\r\n    });\r\n  }\r\n}\r\n","import { ChangeDetectorRef } from '@angular/core';\r\nimport {\r\n  Component,\r\n  ElementRef,\r\n  forwardRef,\r\n  Input,\r\n  OnChanges,\r\n  Renderer2,\r\n  SimpleChange,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { IMSelect } from '../../core/directive/select.directive';\r\nimport { NgInputConfigService } from '../../core/ng-input-config.service';\r\nimport { SelectCustomControlValueAccessor } from '../select-custom-control-value-accessor.domain';\r\n\r\ninterface IOption {\r\n  label: string;\r\n  value: string;\r\n  hide?: boolean;\r\n  icon?: string;\r\n}\r\n\r\n@Component({\r\n  selector: 'dss-select',\r\n  templateUrl: './ng-select.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      multi: true,\r\n      useExisting: forwardRef(() => NgSelectComponent),\r\n    },\r\n  ],\r\n})\r\nexport class NgSelectComponent\r\n  extends SelectCustomControlValueAccessor\r\n  implements OnChanges\r\n{\r\n  @ViewChild('select', { static: true })\r\n  elementSelect: ElementRef<HTMLSelectElement>;\r\n\r\n  @Input() MSelectSettings?: IMSelect;\r\n  @Input() optionDefault: IOption = {\r\n    label: 'Selecione uma opção',\r\n    value: '',\r\n    hide: true,\r\n  };\r\n  @Input() options?: any | IOption[] = [];\r\n  @Input() path?: { [key: string]: string };\r\n\r\n  constructor(\r\n    protected controlContainer: ControlContainer,\r\n    protected elementRef: ElementRef,\r\n    protected renderer: Renderer2,\r\n    public configService: NgInputConfigService,\r\n    changeDetectorRef: ChangeDetectorRef\r\n  ) {\r\n    super(\r\n      controlContainer,\r\n      elementRef,\r\n      renderer,\r\n      configService,\r\n      changeDetectorRef\r\n    );\r\n    this.formatOptions();\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.ngOnInitSuper();\r\n  }\r\n\r\n  ngOnChanges(params: { options: SimpleChange }) {\r\n    if (!!params.options && !!params.options.currentValue) {\r\n      this.formatOptions();\r\n    }\r\n  }\r\n\r\n  formatOptions() {\r\n    if (this.options.length > 0) {\r\n      const option: IOption[] = [];\r\n      option.push(this.optionDefault);\r\n\r\n      const optionRef = this.options[0];\r\n      if (\r\n        typeof optionRef?.label === 'string' &&\r\n        typeof optionRef?.value === 'string'\r\n      ) {\r\n        this.options?.forEach((opt: any) => option?.push(opt));\r\n      } else {\r\n        if (this.path) {\r\n          const key = Object.keys(this.path)[0];\r\n          const value = this.path[key];\r\n\r\n          this.options?.forEach((opt: any) =>\r\n            option?.push({\r\n              label: this.getMultiLabels(opt, key.split('.')),\r\n              value: this.getMultiLabels(opt, value.split('.')),\r\n              hide: false,\r\n            })\r\n          );\r\n        }\r\n      }\r\n\r\n      this.options = option;\r\n    }\r\n  }\r\n\r\n  get className() {\r\n    const validField = this.control.valid && this.control.touched;\r\n    const invalidField = this.control.invalid && this.control.touched;\r\n    return {\r\n      readonly: this.readonly,\r\n      'is-invalid': !this.readonly && invalidField,\r\n      'is-valid': validField,\r\n    };\r\n  }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { NgInputMasksService } from '../ng-input-masks.service';\n\n@Pipe({\n  name: 'dssMask',\n})\nexport class NgMaskPipe implements PipeTransform {\n  constructor(private maskService: NgInputMasksService) {}\n\n  transform(\n    value: any,\n    type?:\n      | 'TEL'\n      | 'CPF'\n      | 'CNPJ'\n      | 'CPF_CNPJ'\n      | 'RG'\n      | 'RG_ESTADUAL'\n      | 'CURRENCY'\n      | 'PERCENT'\n      | 'DATE'\n      | 'AMOUNT'\n      | string\n  ): any {\n    if (value) {\n      if (type === undefined) {\n        return value;\n      }\n      return this.maskService.format(value, type as 'currency');\n    }\n    return '-';\n  }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule, DatePipe } from '@angular/common';\n\nimport { NgMaskPipe } from './ng-mask.pipe';\n\n@NgModule({\n  imports: [CommonModule],\n  declarations: [NgMaskPipe],\n  exports: [NgMaskPipe],\n  providers: [NgMaskPipe, DatePipe],\n})\nexport class NgPipeModule {\n  static forRoot(): ModuleWithProviders<any> {\n    return {\n      ngModule: NgPipeModule,\n      providers: [NgMaskPipe, DatePipe],\n    };\n  }\n}\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { NgInputConfigService } from './ng-input-config.service';\r\nimport { NgInputMasksService } from './ng-input-masks.service';\r\nimport { NgPipeModule } from './pipe/ng-pipe.module';\r\n\r\n@NgModule({\r\n  declarations: [],\r\n  imports: [CommonModule, ReactiveFormsModule, FormsModule, NgPipeModule],\r\n  exports: [ReactiveFormsModule, FormsModule, NgPipeModule],\r\n})\r\nexport class NgCoreModule {\r\n  static forRoot(): ModuleWithProviders<any> {\r\n    return {\r\n      ngModule: NgCoreModule,\r\n      providers: [NgInputConfigService, NgInputMasksService, NgPipeModule],\r\n    };\r\n  }\r\n}\r\n","import {\n  AfterViewInit,\n  Directive,\n  ElementRef,\n  Input,\n  OnChanges,\n  OnDestroy,\n} from '@angular/core'\nimport { NgInputConfigService } from '../ng-input-config.service';\n\nexport interface IMSelect {\n  default?: boolean;\n}\n\ndeclare const M;\n\n@Directive({\n  selector: '[MSelect]',\n})\nexport class SelectDirective implements OnChanges, OnDestroy, AfterViewInit {\n  @Input() MSelect?: IMSelect = {\n    default: false,\n  };\n  @Input() options?: any;\n  ref?: any;\n\n  constructor(\n    private elementRef: ElementRef<HTMLSelectElement>,\n    private ngInputConfigService: NgInputConfigService\n  ) {}\n\n  ngAfterViewInit() {\n    const element = this.elementRef.nativeElement;\n    if (\n      !this.MSelect?.default &&\n      this.ngInputConfigService.theme === 'materialize'\n    ) {\n      this.initSelect();\n    } else {\n      element.classList.add('browser-default');\n    }\n  }\n\n  ngOnChanges() {\n    if (\n      !this.MSelect?.default &&\n      this.ngInputConfigService.theme === 'materialize'\n    ) {\n      this.initSelect();\n    }\n  }\n\n  initSelect() {\n    setTimeout(() => {\n      if (this.ref) {\n        this.ref?.destroy();\n      }\n      this.ref = M?.FormSelect.init(this.elementRef.nativeElement);\n    }, 250);\n  }\n\n  ngOnDestroy() {\n    if (this.ref) {\n      this.ref?.destroy();\n    }\n  }\n}\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { SelectDirective } from './select.directive';\r\n\r\n@NgModule({\r\n  imports: [CommonModule],\r\n  declarations: [SelectDirective],\r\n  exports: [SelectDirective],\r\n})\r\nexport class NgDirectiveModule {\r\n  static forRoot(): ModuleWithProviders<any> {\r\n    return {\r\n      ngModule: NgDirectiveModule,\r\n      providers: [],\r\n    };\r\n  }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { SelectCustomControlValueAccessor } from './select-custom-control-value-accessor.domain';\r\nimport { NgSearchComponent } from './ng-search/ng-search.component';\r\nimport { NgSelectComponent } from './ng-select/ng-select.component';\r\n\r\nimport { NgCoreModule } from '../core/ng-core.module';\r\nimport { NgDirectiveModule } from '../core/directive/ng-directive.module';\r\n\r\n@NgModule({\r\n  declarations: [\r\n    NgSearchComponent,\r\n    NgSelectComponent,\r\n    SelectCustomControlValueAccessor,\r\n  ],\r\n  imports: [CommonModule, NgCoreModule, NgDirectiveModule],\r\n  exports: [NgSearchComponent, NgSelectComponent, NgCoreModule],\r\n})\r\nexport class NgSelectModule {}\r\n","import { ChangeDetectorRef } from '@angular/core';\r\nimport {\r\n  AfterViewInit,\r\n  Component,\r\n  EventEmitter,\r\n  HostBinding,\r\n  Input,\r\n  OnInit,\r\n  Output,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n  ControlContainer,\r\n  ControlValueAccessor,\r\n  FormControl,\r\n  FormControlDirective,\r\n} from '@angular/forms';\r\nimport { NgInputConfigService } from '../core/ng-input-config.service';\r\n\r\ninterface IObject {\r\n  [key: string]: string;\r\n}\r\n\r\ninterface IOnWrite {\r\n  (value: any): void;\r\n}\r\n\r\n@Component({ selector: '', template: '' })\r\nexport class InputCustomControlValueAccessor\r\n  implements ControlValueAccessor, OnInit\r\n{\r\n  @ViewChild(FormControlDirective, { static: true })\r\n  formControlDirective: FormControlDirective;\r\n  @Input() formControl: FormControl;\r\n  @Input() formControlName: string;\r\n  @Input() name?: string;\r\n  @Input() help?: string;\r\n  @Input() disabled: boolean = false;\r\n\r\n  @Output() blur = new EventEmitter();\r\n  @Output() focus = new EventEmitter();\r\n\r\n  private _placeholder: string = '';\r\n  get placeholder(): string {\r\n    return this._placeholder;\r\n  }\r\n  @Input() set placeholder(value: string) {\r\n    this._placeholder = value;\r\n  }\r\n\r\n  @Input() label: string = '';\r\n  _cols: { default: number; lg?: number; md?: number; sm?: number } = {\r\n    default: 12,\r\n    sm: 12,\r\n  };\r\n  @Input() set cols(cols: {\r\n    default?: number;\r\n    lg?: number;\r\n    md?: number;\r\n    sm?: number;\r\n  }) {\r\n    this._cols = { ...this._cols, ...cols };\r\n  }\r\n\r\n  _field: null | 'group' | 'floating' = null;\r\n  @Input() set field(value: 'group' | 'floating') {\r\n    this._field = value;\r\n  }\r\n  get field() {\r\n    return this._field\r\n      ? this._field\r\n      : (this._configService.field.type as 'group' | 'floating');\r\n  }\r\n\r\n  @Input() readonly: boolean = false;\r\n  @Input() required?: boolean;\r\n\r\n  @Input() errors: IObject = {};\r\n\r\n  get control(): FormControl {\r\n    return (this.formControl ||\r\n      this._controlContainer?.control?.get(\r\n        this.formControlName\r\n      )) as FormControl;\r\n  }\r\n\r\n  @HostBinding('class') get classCols() {\r\n    let className =\r\n      this._configService.theme === 'bootstrap'\r\n        ? `col-${this._cols.default}`\r\n        : `col`;\r\n    if (this._cols.lg)\r\n      className +=\r\n        this._configService.theme === 'bootstrap'\r\n          ? ` col-lg-${this._cols.lg}`\r\n          : ` l${this._cols.lg}`;\r\n    if (this._cols.md)\r\n      className +=\r\n        this._configService.theme === 'bootstrap'\r\n          ? ` col-md-${this._cols.md}`\r\n          : ` m${this._cols.md}`;\r\n    if (this._cols.sm)\r\n      className +=\r\n        this._configService.theme === 'bootstrap'\r\n          ? ` col-sm-${this._cols.sm}`\r\n          : ` s${this._cols.sm}`;\r\n    return className;\r\n  }\r\n\r\n  constructor(\r\n    private _controlContainer: ControlContainer,\r\n    private _configService: NgInputConfigService,\r\n    private _changeDetectorRef: ChangeDetectorRef\r\n  ) {}\r\n\r\n  ngOnInit() {\r\n    this.ngOnInitSuper();\r\n    if (this.disabled) this.control.disable();\r\n    else this.control.enable();\r\n  }\r\n\r\n  protected ngOnInitSuper() {\r\n    if (this.name === undefined) this.name = this.formControlName;\r\n\r\n    if (this.required === null) {\r\n      const value = this.control.value;\r\n      this.control.reset();\r\n      this.required = !!this.control.getError('required');\r\n      this.control.setValue(value);\r\n    }\r\n  }\r\n\r\n  getKeys(errors: IObject) {\r\n    return Object.keys(errors);\r\n  }\r\n  getError(key: string) {\r\n    return this.control?.errors?.[key] && this.control?.touched;\r\n  }\r\n\r\n  registerOnTouched(fn: any): void {\r\n    this.formControlDirective.valueAccessor?.registerOnTouched(fn);\r\n  }\r\n\r\n  onWrite: IOnWrite;\r\n  registerOnChange(fn: IOnWrite): void {\r\n    this.onWrite = fn;\r\n  }\r\n\r\n  time: any = 0;\r\n  writeValue(obj: any): void {\r\n    clearTimeout(this.time);\r\n    this.time = setTimeout(() => {\r\n      this.onWrite(obj);\r\n    });\r\n  }\r\n\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n}\r\n","export const typeInputsProps = [\r\n  'button',\r\n  'checkbox',\r\n  'color',\r\n  'date',\r\n  'datetime-local',\r\n  'email',\r\n  'file',\r\n  'hidden',\r\n  'image',\r\n  'month',\r\n  'number',\r\n  'password',\r\n  'radio',\r\n  'range',\r\n  'reset',\r\n  'search',\r\n  'submit',\r\n  'tel',\r\n  'text',\r\n  'time',\r\n  'url',\r\n  'week',\r\n];\r\n\r\nexport const typeInputsPropsCustom = [\r\n  'CPF',\r\n  'CNPJ',\r\n  'CPF_CNPJ',\r\n  'RG',\r\n  'RG_ESTADUAL',\r\n  'PERCENT',\r\n  'CEP',\r\n  'CURRENCY',\r\n  'TEL',\r\n  'ZIPCODE',\r\n];\r\n\r\nexport type ITypeInputsPropsCustom =\r\n  | 'CPF'\r\n  | 'CNPJ'\r\n  | 'CPF_CNPJ'\r\n  | 'RG'\r\n  | 'RG_ESTADUAL'\r\n  | 'PERCENT'\r\n  | 'CEP'\r\n  | 'CURRENCY'\r\n  | 'amount'\r\n  | 'ZIPCODE';\r\n\r\nexport type ITypeInputProps =\r\n  | 'button'\r\n  | 'checkbox'\r\n  | 'color'\r\n  | 'date'\r\n  | 'datetime-local'\r\n  | 'email'\r\n  | 'file'\r\n  | 'hidden'\r\n  | 'image'\r\n  | 'month'\r\n  | 'number'\r\n  | 'password'\r\n  | 'radio'\r\n  | 'range'\r\n  | 'reset'\r\n  | 'search'\r\n  | 'submit'\r\n  | 'tel'\r\n  | 'text'\r\n  | 'time'\r\n  | 'url'\r\n  | 'week'\r\n  | string;\r\n","import {\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  forwardRef,\r\n  Input,\r\n  OnInit,\r\n  Output,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport * as dayjs from 'dayjs';\r\nimport { InputMask } from 'imask';\r\nimport { NgInputConfigService } from '../../core/ng-input-config.service';\r\nimport { NgInputMasksService } from '../../core/ng-input-masks.service';\r\nimport { InputCustomControlValueAccessor } from '../input-custom-control-value-accessor.domain';\r\nimport {\r\n  ITypeInputProps,\r\n  typeInputsProps,\r\n  ITypeInputsPropsCustom,\r\n  typeInputsPropsCustom,\r\n} from './typesInput';\r\n\r\ninterface IIconProps {\r\n  icon?: string | undefined;\r\n  align?: 'right' | 'left' | undefined;\r\n  clickable?: boolean | undefined;\r\n  hide?: boolean;\r\n  class: string;\r\n}\r\n\r\ninterface IDateProps {\r\n  fill?: boolean;\r\n  date?: string | Date;\r\n}\r\n\r\n@Component({\r\n  selector: 'dss-input',\r\n  templateUrl: './ng-input.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      multi: true,\r\n      useExisting: forwardRef(() => NgInputComponent),\r\n    },\r\n  ],\r\n})\r\nexport class NgInputComponent\r\n  extends InputCustomControlValueAccessor\r\n  implements OnInit\r\n{\r\n  @ViewChild('input', { static: true }) input: ElementRef<HTMLInputElement>;\r\n  @Input() align: 'right' | 'left' | 'center' | null = null;\r\n  @Input() autocomplete = 'work';\r\n  @Input() date: IDateProps = { fill: false, date: new Date() };\r\n  @Input() mask?: string;\r\n  @Input() allowNegative?: boolean;\r\n  @Input() validate?: 'STRONG' | 'NORMAL' | 'LOW' | 'NONE' = 'NORMAL';\r\n  @Input() number = {\r\n    returnNULL: true,\r\n  };\r\n  @Input() type: ITypeInputsPropsCustom | ITypeInputProps = 'text';\r\n  typesMask = [...typeInputsPropsCustom];\r\n  typeInit: string = 'text';\r\n\r\n  @Output() clickIcon = new EventEmitter();\r\n\r\n  _icon: IIconProps = {\r\n    clickable: false,\r\n    align: this.configService.field.alignIcons,\r\n    hide: false,\r\n    class: '',\r\n  };\r\n  @Input() set icon(icon: IIconProps | any) {\r\n    this._icon = Object.assign(this._icon, icon);\r\n\r\n    if (icon) {\r\n      this._icon.class = `form-icon-floating ${icon.icon} ${this._icon.align} ${\r\n        this._icon.clickable && 'clickable'\r\n      }`;\r\n    }\r\n  }\r\n\r\n  isFieldPassword: boolean = false;\r\n  isFieldCurrency: boolean = false;\r\n  isFieldPercent: boolean = false;\r\n  isFieldAmount: boolean = false;\r\n\r\n  instance: null | { unmaskedValue?: string; formatToNumber(): number } = null;\r\n\r\n  typesDates = ['date', 'datetime-local', 'month', 'time'];\r\n  typesActive = [\r\n    'date',\r\n    'month',\r\n    'currency',\r\n    'percent',\r\n    'time',\r\n    'week',\r\n    'datetime-local',\r\n    'color',\r\n  ];\r\n\r\n  get activeField() {\r\n    return (\r\n      this.control.value?.length > 0 || this.typesActive.includes(this.typeInit)\r\n    );\r\n  }\r\n\r\n  constructor(\r\n    private controlContainer: ControlContainer,\r\n    private masksService: NgInputMasksService,\r\n    public configService: NgInputConfigService,\r\n    private changeDetectorRef: ChangeDetectorRef\r\n  ) {\r\n    super(controlContainer, configService, changeDetectorRef);\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.ngOnInitSuper();\r\n    this.typeInit = this.type;\r\n\r\n    this.isFieldPassword = this.type === 'password';\r\n\r\n    if (this.align === null && this.typeInit === 'amount') {\r\n      this.isFieldAmount = true;\r\n      this.align = 'right';\r\n    }\r\n\r\n    if (this.typesMask.includes(this.type.toUpperCase()) || this.mask) {\r\n      this.instance = this.masksService.set(\r\n        this.input.nativeElement,\r\n        this.type as 'currency',\r\n        { allowNegative: this.allowNegative, mask: this.mask }\r\n      );\r\n\r\n      if (this.type === 'currency') {\r\n        this.isFieldCurrency = true;\r\n        if (this.configService.currency.align)\r\n          this.align = this.configService.currency.align;\r\n      }\r\n      if (this.type === 'percent') {\r\n        this.isFieldPercent = true;\r\n        if (this.configService.percent.align)\r\n          this.align = this.configService.percent.align;\r\n      }\r\n    }\r\n\r\n    if (this._icon.icon === undefined && this.configService.field.icons) {\r\n      if (this.configService.field.icons[this.type]) {\r\n        this.icon = this.configService.field.icons[this.type] as any;\r\n      }\r\n    }\r\n\r\n    if (!typeInputsProps.includes(this.type)) {\r\n      this.type = 'text';\r\n    }\r\n\r\n    const isValidFormat =\r\n      this.date.fill &&\r\n      this.typesDates.includes(this.type) &&\r\n      !Boolean(this.control.value);\r\n\r\n    if (isValidFormat) {\r\n      this.control.setValue(this.formatDate());\r\n    }\r\n\r\n    if (this.align === null) {\r\n      this.align = 'left';\r\n    }\r\n\r\n    this.input.nativeElement.addEventListener('input', (event) => {\r\n      let { value } = event.target as HTMLInputElement;\r\n\r\n      if (this.isFieldAmount) {\r\n        value = value.replace(/\\D/g, '');\r\n\r\n        if (/^0/g.test(value)) {\r\n          value = value.replace(/0+/, '');\r\n        }\r\n\r\n        const result = Number(value) / 1000;\r\n\r\n        if (result === 0 && this.number.returnNULL) {\r\n          this.onWrite(null);\r\n        } else {\r\n          this.onWrite(result);\r\n        }\r\n\r\n        this.input.nativeElement.value = result.toFixed(3);\r\n      } else if (this.instance) {\r\n        if (this.isFieldCurrency || this.isFieldPercent) {\r\n          const currencyOrPercent = this.instance?.formatToNumber() as any;\r\n          if (this.required) {\r\n            value =\r\n              currencyOrPercent === 0 && this.number.returnNULL\r\n                ? null\r\n                : currencyOrPercent;\r\n          } else value = currencyOrPercent;\r\n        } else {\r\n          value = this.instance?.unmaskedValue as string;\r\n        }\r\n\r\n        this.onWrite(value);\r\n      } else {\r\n        this.onWrite(value);\r\n      }\r\n    });\r\n  }\r\n\r\n  formatDate(date = this.date.date) {\r\n    const dates = {\r\n      'datetime-local': dayjs(date).format('YYYY-MM-DDTHH:mm:ss'),\r\n      date: dayjs(date).format('YYYY-MM-DD'),\r\n      month: dayjs(date).format('YYYY-MM'),\r\n      time: dayjs(date).format('HH:mm'),\r\n    };\r\n    return dates[this.type];\r\n  }\r\n\r\n  onClickIcon(event: Event) {\r\n    if (this._icon.clickable) {\r\n      if (this.isFieldPassword)\r\n        this.type = this.type === 'password' ? 'text' : 'password';\r\n\r\n      this.clickIcon.emit(event);\r\n    }\r\n  }\r\n\r\n  onFocus(event: Event) {\r\n    if (this.isFieldCurrency || this.isFieldPercent || this.isFieldAmount) {\r\n      const length = this.input.nativeElement.value.length;\r\n      this.input.nativeElement.setSelectionRange(0, length);\r\n    }\r\n    this.focus.emit(event);\r\n  }\r\n\r\n  time: any = 0;\r\n  writeValue(obj: any): void {\r\n    clearTimeout(this.time);\r\n    this.time = setTimeout(() => {\r\n      const isValidFormat = this.typesDates.includes(this.type);\r\n\r\n      if (isValidFormat) {\r\n        this.input.nativeElement.value = this.formatDate(obj);\r\n      }\r\n\r\n      if (this.typeInit === 'amount') {\r\n        let value = `${obj}`;\r\n\r\n        if (/^0/g.test(value)) {\r\n          value = value.replace(/0+/, '');\r\n        }\r\n\r\n        let result = Number(value);\r\n\r\n        if (Number.isNaN(result)) {\r\n          result = 0;\r\n        }\r\n\r\n        if (result === 0 && this.number.returnNULL) {\r\n          this.onWrite(null);\r\n        } else {\r\n          this.onWrite(result);\r\n        }\r\n\r\n        this.input.nativeElement.value = result.toFixed(3);\r\n      } else if (this.typesMask.includes(this.typeInit.toUpperCase())) {\r\n        if (this.isFieldCurrency || this.isFieldPercent) {\r\n          let result = this.masksService.format(\r\n            obj,\r\n            this.isFieldCurrency ? 'currency' : 'percent',\r\n            { allowNegative: this.allowNegative, mask: this.mask }\r\n          );\r\n\r\n          this.input.nativeElement.value =\r\n            result === 0 && this.number.returnNULL ? null : result;\r\n\r\n          result = this.instance?.formatToNumber() as any;\r\n          if (result === 0 && !this.number.returnNULL) {\r\n            this.onWrite(result);\r\n          }\r\n        } else {\r\n          this.input.nativeElement.value = this.masksService.format(\r\n            `${obj}`,\r\n            this.typeInit as 'currency',\r\n            { allowNegative: this.allowNegative, mask: this.mask }\r\n          );\r\n          (this.instance as unknown as InputMask<any>)?.updateValue();\r\n        }\r\n        this.input.nativeElement.blur();\r\n        this.control.markAsUntouched();\r\n      }\r\n      this.changeDetectorRef.detectChanges();\r\n    }, 250);\r\n  }\r\n\r\n  get className() {\r\n    const validField = this.control.valid && this.control.touched;\r\n    const invalidField = this.control.invalid && this.control.touched;\r\n    return {\r\n      readonly: this.readonly,\r\n      'is-invalid': !this.readonly && invalidField,\r\n      'is-valid': validField,\r\n    };\r\n  }\r\n}\r\n","import {\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  forwardRef,\r\n  Input,\r\n  OnInit,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { NgInputConfigService } from '../../core/ng-input-config.service';\r\nimport { InputCustomControlValueAccessor } from '../input-custom-control-value-accessor.domain';\r\n\r\n@Component({\r\n  selector: 'dss-text-area',\r\n  templateUrl: './ng-text-area.component.html',\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      multi: true,\r\n      useExisting: forwardRef(() => NgTextAreaComponent),\r\n    },\r\n  ],\r\n})\r\nexport class NgTextAreaComponent extends InputCustomControlValueAccessor {\r\n  @ViewChild('textarea', { static: true })\r\n  textarea: ElementRef<HTMLTextAreaElement>;\r\n  @Input() length: number | string = 300;\r\n  @Input() rows: number = 100;\r\n\r\n  constructor(\r\n    protected controlContainer: ControlContainer,\r\n    public configService: NgInputConfigService,\r\n    changeDetectorRef: ChangeDetectorRef\r\n  ) {\r\n    super(controlContainer, configService, changeDetectorRef);\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.ngOnInitSuper();\r\n  }\r\n\r\n  get className() {\r\n    const validField = this.control.valid && this.control.touched;\r\n    const invalidField = this.control.invalid && this.control.touched;\r\n    return {\r\n      floating: this.field === 'floating',\r\n      readonly: this.readonly,\r\n      'is-invalid': !this.readonly && invalidField,\r\n      'is-valid': validField,\r\n    };\r\n  }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { NgInputComponent } from './ng-input/ng-input.component';\r\nimport { NgTextAreaComponent } from './ng-text-area/ng-text-area.component';\r\nimport { NgCoreModule } from '../core/ng-core.module';\r\nimport { InputCustomControlValueAccessor } from './input-custom-control-value-accessor.domain';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n  declarations: [\r\n    NgInputComponent,\r\n    NgTextAreaComponent,\r\n    InputCustomControlValueAccessor,\r\n  ],\r\n  imports: [CommonModule, NgCoreModule],\r\n  exports: [NgInputComponent, NgTextAreaComponent, NgCoreModule],\r\n})\r\nexport class NgInputModule {}\r\n","import {\r\n  Component,\r\n  ElementRef,\r\n  forwardRef,\r\n  HostBinding,\r\n  Input,\r\n  Renderer2,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n  CheckboxControlValueAccessor,\r\n  ControlContainer,\r\n  FormControl,\r\n  FormControlDirective,\r\n  NG_VALUE_ACCESSOR,\r\n} from '@angular/forms';\r\nimport { NgInputConfigService } from './../core/ng-input-config.service';\r\n\r\ninterface IObject {\r\n  [key: string]: string;\r\n}\r\n@Component({\r\n  selector: 'dss-checkbox',\r\n  templateUrl: './ng-checkbox.component.html',\r\n  styleUrls: ['./ng-checkbox.component.scss'],\r\n  host: {\r\n    '(change)': 'onChange($event.target.checked)',\r\n    '(blur)': 'onTouched()',\r\n  },\r\n  providers: [\r\n    {\r\n      provide: NG_VALUE_ACCESSOR,\r\n      multi: true,\r\n      useExisting: forwardRef(() => NgCheckboxComponent),\r\n    },\r\n  ],\r\n})\r\nexport class NgCheckboxComponent extends CheckboxControlValueAccessor {\r\n  @Input() label: string = 'Sem label: ';\r\n  @Input() type: 'checkbox' | 'switch' | 'button-checkbox' | 'button-switch' =\r\n    'checkbox';\r\n  @Input() line: boolean = false;\r\n\r\n  @Input() readonly: boolean;\r\n  @Input() required: boolean = false;\r\n  @Input() help?: string;\r\n\r\n  @Input() errors: IObject = {};\r\n\r\n  @Input() suffix: string = '';\r\n  @Input() prefix: string = '';\r\n\r\n  _cols: { default: number; lg?: number; md?: number; sm?: number } = {\r\n    default: 12,\r\n  };\r\n  @Input() set cols(cols: {\r\n    default?: number;\r\n    lg?: number;\r\n    md?: number;\r\n    sm?: number;\r\n  }) {\r\n    this._cols = { ...this._cols, ...cols };\r\n  }\r\n  @HostBinding('class') get classCols() {\r\n    let className =\r\n      this.configService.theme === 'bootstrap'\r\n        ? `col-${this._cols.default}`\r\n        : `col`;\r\n    if (this._cols.lg)\r\n      className +=\r\n        this.configService.theme === 'bootstrap'\r\n          ? ` col-lg-${this._cols.lg}`\r\n          : ` l${this._cols.lg}`;\r\n    if (this._cols.md)\r\n      className +=\r\n        this.configService.theme === 'bootstrap'\r\n          ? ` col-md-${this._cols.md}`\r\n          : ` m${this._cols.md}`;\r\n    if (this._cols.sm)\r\n      className +=\r\n        this.configService.theme === 'bootstrap'\r\n          ? ` col-sm-${this._cols.sm}`\r\n          : ` s${this._cols.sm}`;\r\n    return className;\r\n  }\r\n\r\n  constructor(\r\n    private controlContainer: ControlContainer,\r\n    private elementRef: ElementRef,\r\n    private renderer: Renderer2,\r\n    public configService: NgInputConfigService\r\n  ) {\r\n    super(renderer, elementRef);\r\n    this.readonly = false;\r\n  }\r\n\r\n  ngOnInit() {}\r\n\r\n  // #############################\r\n\r\n  // ATTRIBUTE AND METHODS CONTROL\r\n\r\n  // #############################\r\n\r\n  @ViewChild(FormControlDirective, { static: true })\r\n  formControlDirective: FormControlDirective;\r\n  @Input() formControl: FormControl;\r\n  @Input() formControlName: string;\r\n\r\n  get control(): FormControl {\r\n    return (this.formControl ||\r\n      this.controlContainer?.control?.get(this.formControlName)) as FormControl;\r\n  }\r\n\r\n  getKeys(errors: IObject) {\r\n    return Object.keys(errors);\r\n  }\r\n  getError(key: string) {\r\n    return this.control?.errors?.[key] && this.control?.touched;\r\n  }\r\n\r\n  writeValue(value: any): void {\r\n    this.renderer.setProperty(this.elementRef.nativeElement, 'checked', value);\r\n  }\r\n  onChange: (_: any) => {};\r\n  registerOnChange(fn: (_: any) => {}): void {\r\n    this.onChange = fn;\r\n  }\r\n  onTouched: () => {};\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouched = fn;\r\n  }\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.renderer.setProperty(\r\n      this.elementRef.nativeElement,\r\n      'disabled',\r\n      isDisabled\r\n    );\r\n  }\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { NgCheckboxComponent } from './ng-checkbox.component';\r\nimport { NgCoreModule } from '../core/ng-core.module';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n  declarations: [NgCheckboxComponent],\r\n  imports: [CommonModule, NgCoreModule],\r\n  exports: [NgCheckboxComponent, NgCoreModule],\r\n})\r\nexport class NgCheckboxModule {}\r\n","import { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core';\r\n\r\nimport {\r\n  NgInputConfigService,\r\n  INgInputConfig,\r\n} from './core/ng-input-config.service';\r\nimport { NgInputMasksService } from './core/ng-input-masks.service';\r\n\r\nimport { NgSelectModule } from './ng-select/ng-select.module';\r\nimport { NgInputModule } from './ng-input/ng-input.module';\r\nimport { NgCheckboxModule } from './ng-checkbox/ng-checkbox.module';\r\nimport { NgCoreModule } from './core/ng-core.module';\r\n\r\n@NgModule({\r\n  imports: [NgSelectModule, NgInputModule, NgCheckboxModule, NgCoreModule],\r\n  providers: [NgInputConfigService, NgInputMasksService],\r\n  exports: [NgSelectModule, NgInputModule, NgCheckboxModule, NgCoreModule],\r\n})\r\nexport class NgInputsModule {\r\n  static forRoot(options?: INgInputConfig): ModuleWithProviders<any> {\r\n    return {\r\n      ngModule: NgInputsModule,\r\n      providers: [\r\n        NgInputMasksService,\r\n        {\r\n          provide: FOR_ROOT_OPTIONS_TOKEN,\r\n          useValue: options,\r\n        },\r\n        {\r\n          provide: NgInputConfigService,\r\n          useFactory: provideMyServiceOptions,\r\n          deps: [FOR_ROOT_OPTIONS_TOKEN],\r\n        },\r\n      ],\r\n    };\r\n  }\r\n}\r\n\r\nexport var FOR_ROOT_OPTIONS_TOKEN = new InjectionToken<NgInputConfigService>(\r\n  'forRoot() NgInputConfigService() configuration.'\r\n);\r\n\r\nexport function provideMyServiceOptions(\r\n  options?: INgInputConfig\r\n): NgInputConfigService {\r\n  const service = new NgInputConfigService();\r\n\r\n  if (options?.field) service.field = options.field;\r\n  if (options?.theme) service.theme = options.theme;\r\n  if (options?.currency) service.currency = options.currency;\r\n  if (options?.percent) service.percent = options.percent;\r\n  if (options?.environments) service.environments = options.environments;\r\n\r\n  return service;\r\n}\r\n"]}