{"version":3,"file":"davidlj95-ngx-meta-json-ld.mjs","sources":["../../src/json-ld/src/managers/provide-json-ld-in-head.ts","../../src/json-ld/src/providers/provide-ngx-meta-json-ld.ts","../../src/json-ld/src/providers/ngx-meta-json-ld.module.ts","../../src/json-ld/davidlj95-ngx-meta-json-ld.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common'\nimport {\n  _headElementUpsertOrRemove,\n  _HeadElementUpsertOrRemove,\n  _isDefined,\n  provideNgxMetaManager,\n  withManagerDeps,\n  withOptions,\n} from '@davidlj95/ngx-meta/core'\nimport { JsonLdMetadata } from '../types'\n\nconst SCRIPT_TYPE = 'application/ld+json'\n\n/**\n * Manages the {@link JsonLdMetadata.jsonLd} metadata by placing it into the page's `<head>`\n * @public\n */\nexport const provideJsonLdInHead = () =>\n  provideNgxMetaManager<JsonLdMetadata['jsonLd']>(\n    'jsonLd' satisfies keyof JsonLdMetadata,\n    (headElementUpsertOrRemove: _HeadElementUpsertOrRemove, doc: Document) =>\n      (jsonLd) => {\n        let scriptElement: HTMLScriptElement | undefined\n        if (_isDefined(jsonLd)) {\n          scriptElement = doc.createElement('script')\n          scriptElement.setAttribute('type', SCRIPT_TYPE)\n          scriptElement.innerHTML = JSON.stringify(jsonLd)\n        }\n        headElementUpsertOrRemove(\n          `script[type='${SCRIPT_TYPE}']`,\n          scriptElement,\n        )\n      },\n    withOptions(withManagerDeps(_headElementUpsertOrRemove(), DOCUMENT)),\n  )\n\n/**\n * {@inheritDoc provideNgxMetaJsonLd}\n * @deprecated Use {@link provideNgxMetaJsonLd} instead\n * @public\n */\nexport const JSON_LD_METADATA_PROVIDER =\n  /* @__PURE__ */\n  provideJsonLdInHead()\n","import { provideJsonLdInHead } from '../managers/provide-json-ld-in-head'\nimport { Provider } from '@angular/core'\n\n/**\n * Provides {@link https://ngx-meta.dev/built-in-modules/json-ld/ | JSON-LD module}\n * metadata managers.\n *\n * @remarks\n *\n * This is the standalone, recommended API. Using this API is preferred.\n * However, you may also use {@link NgxMetaJsonLdModule} as the Angular module-based equivalent API.\n *\n * @public\n */\nexport const provideNgxMetaJsonLd = (): Provider => provideJsonLdInHead()\n","import { NgModule } from '@angular/core'\nimport { provideNgxMetaJsonLd } from './provide-ngx-meta-json-ld'\n\n/**\n * Provides {@link https://ngx-meta.dev/built-in-modules/json-ld/ | JSON-LD module}\n * metadata managers.\n *\n * Check out {@link provideNgxMetaJsonLd} for the standalone, recommended API.\n *\n * @public\n */\n@NgModule({\n  providers: [provideNgxMetaJsonLd()],\n})\nexport class NgxMetaJsonLdModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAWA,MAAM,WAAW,GAAG,qBAAqB,CAAA;AAEzC;;;AAGG;AACI,MAAM,mBAAmB,GAAG,MACjC,qBAAqB,CACnB,QAAuC,EACvC,CAAC,yBAAqD,EAAE,GAAa,KACnE,CAAC,MAAM,KAAI;AACT,IAAA,IAAI,aAA4C,CAAA;AAChD,IAAA,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;AACtB,QAAA,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;AAC3C,QAAA,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC/C,aAAa,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;KACjD;AACD,IAAA,yBAAyB,CACvB,CAAgB,aAAA,EAAA,WAAW,IAAI,EAC/B,aAAa,CACd,CAAA;AACH,CAAC,EACH,WAAW,CAAC,eAAe,CAAC,0BAA0B,EAAE,EAAE,QAAQ,CAAC,CAAC,CACrE,CAAA;AAEH;;;;AAIG;MACU,yBAAyB;AACpC;AACA,mBAAmB;;ACxCrB;;;;;;;;;;AAUG;MACU,oBAAoB,GAAG,MAAgB,mBAAmB;;ACXvE;;;;;;;AAOG;MAIU,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EAFnB,SAAA,EAAA,CAAC,oBAAoB,EAAE,CAAC,EAAA,CAAA,CAAA,EAAA;;4FAExB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE,CAAC,oBAAoB,EAAE,CAAC;AACpC,iBAAA,CAAA;;;ACbD;;AAEG;;;;"}