@tricoteuses/tisseuse 0.21.1 → 0.22.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/README.md +4 -0
- package/dist/{html-tp0cMUmA.js → html-BTaoaqX5.js} +6964 -5672
- package/dist/index.js +93 -431
- package/dist/{src/lib → lib}/extractors/article_portions.d.ts +14 -0
- package/dist/{src/lib → lib}/extractors/links.d.ts +117 -3
- package/dist/{src/lib → lib}/f_legi/resolver.d.ts +23 -4
- package/dist/lib/legi/article_abrogation.d.ts +25 -0
- package/dist/lib/legi/article_history.d.ts +11 -0
- package/dist/lib/legi/article_structure.d.ts +9 -0
- package/dist/{src/lib → lib}/legi/canutes_resolver.d.ts +17 -16
- package/dist/lib/legi/law_article.d.ts +13 -0
- package/dist/lib/legi/named_text_article.d.ts +22 -0
- package/dist/lib/legi/publication_components.d.ts +22 -0
- package/dist/lib/legi/publication_components.fixture.d.ts +3 -0
- package/dist/{src/lib → lib}/legi/resolver.d.ts +40 -0
- package/dist/lib/linkers/enumeration_scope.fixture.d.ts +19 -0
- package/dist/{src/lib → lib}/linkers/html.d.ts +16 -3
- package/dist/lib/linkers/html_decision_capture.d.ts +18 -0
- package/dist/lib/linkers/link_decision_html.d.ts +4 -0
- package/dist/lib/linkers/link_decision_metadata.d.ts +15 -0
- package/dist/{src/lib → lib}/linkers/markdown.d.ts +7 -1
- package/dist/lib/linkers/named_text_article.d.ts +1 -0
- package/dist/lib/linkers/quoted_section.fixture.d.ts +1 -0
- package/dist/lib/linkers/table_column_texts.d.ts +4 -0
- package/dist/{src/lib → lib}/server/index.d.ts +2 -0
- package/dist/lib/server/jurisprudence_citations.d.ts +46 -0
- package/dist/lib/server/jurisprudence_consultation.d.ts +55 -0
- package/dist/lib/server/jurisprudence_jade.d.ts +57 -0
- package/dist/lib/server/jurisprudence_store.d.ts +36 -0
- package/dist/{src/lib → lib}/server/parsed_bills.d.ts +19 -0
- package/dist/{src/lib → lib}/text_parsers/ast.d.ts +13 -3
- package/dist/lib/text_parsers/historical_versions.d.ts +18 -0
- package/dist/{src/lib → lib}/text_parsers/parsers.d.ts +5 -0
- package/dist/{src/lib → lib}/text_parsers/repeated_actions.d.ts +1 -0
- package/dist/{src/lib → lib}/text_parsers/texts.d.ts +12 -0
- package/dist/link-decision-metadata.js +32 -0
- package/dist/{resolver-CzmDH4S3.js → resolver-GT7457lQ.js} +345 -145
- package/dist/scripts/compare_legi_bills.d.ts +1 -0
- package/dist/scripts/configure_postgres_assemblee_document_triggers.d.ts +1 -0
- package/dist/scripts/configure_postgres_legi_resolver.d.ts +1 -0
- package/dist/scripts/configure_postgres_root_cid_index.d.ts +1 -0
- package/dist/scripts/configure_postgres_senat_document_triggers.d.ts +1 -0
- package/dist/scripts/enrich_assemblee_documents.d.ts +1 -0
- package/dist/scripts/enrich_senat_documents.d.ts +1 -0
- package/dist/scripts/html_document_to_text.d.ts +1 -0
- package/dist/scripts/index_postgres_assemblee_amendments.d.ts +1 -0
- package/dist/scripts/index_postgres_assemblee_texts.d.ts +1 -0
- package/dist/scripts/index_postgres_judilibre.d.ts +1 -0
- package/dist/scripts/index_postgres_legifrance_articles.d.ts +1 -0
- package/dist/scripts/index_postgres_legifrance_jurisprudence.d.ts +1 -0
- package/dist/scripts/index_postgres_senat_amendments.d.ts +1 -0
- package/dist/scripts/index_postgres_senat_texts.d.ts +1 -0
- package/dist/scripts/parse_akoma_ntoso_bill_raw.d.ts +1 -0
- package/dist/scripts/parse_assemblee_bill_raw.d.ts +1 -0
- package/dist/scripts/profile_assemblee_document_parsing.d.ts +1 -0
- package/dist/scripts/profile_canutes_bill.d.ts +1 -0
- package/dist/scripts/replay_linker_scope.d.ts +1 -0
- package/dist/scripts/shared/assemblee_legislature.test.d.ts +1 -0
- package/dist/scripts/shared/checkpoint_cli_options.test.d.ts +1 -0
- package/dist/scripts/simplified_html_bill_to_table_of_contents.d.ts +1 -0
- package/dist/scripts/simplify_word_html.d.ts +1 -0
- package/dist/scripts/sync_postgres_assemblee_document_content.d.ts +1 -0
- package/dist/scripts/sync_postgres_senat_document_content.d.ts +1 -0
- package/dist/scripts/test_canutes_titles_cache.d.ts +1 -0
- package/dist/scripts/warm_canutes_text_titles_cache.d.ts +1 -0
- package/dist/server-f-legi.js +200 -94
- package/dist/server.js +1309 -884
- package/package.json +10 -4
- package/dist/{src/lib → lib}/alineas/alineas_numbers.d.ts +0 -0
- package/dist/{src/lib → lib}/article_temporal_status.test.d.ts +0 -0
- package/dist/{src/lib → lib}/articles.d.ts +0 -0
- package/dist/{src/lib → lib}/articles.test.d.ts +0 -0
- package/dist/{src/lib → lib}/assemblee_document_date.d.ts +0 -0
- package/dist/{src/lib → lib}/assemblee_document_date.test.d.ts +0 -0
- package/dist/{src/lib → lib}/asserts.d.ts +0 -0
- package/dist/{src/lib → lib}/cache.d.ts +0 -0
- package/dist/{src/lib → lib}/dates.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/action_directives.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/action_directives.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/action_directives_cpu.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/article_action_effects.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/article_action_effects.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/article_action_effects_long.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/article_action_targets.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/article_action_targets.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/article_portions.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/definitions.d.ts +0 -0
- package/dist/{src/lib/extractors/links.citation_scope.test.d.ts → lib/extractors/link_decisions.test.d.ts} +0 -0
- package/dist/{src/lib/extractors/links.code_titles.test.d.ts → lib/extractors/links.citation_scope.test.d.ts} +0 -0
- package/dist/{src/lib/extractors/links.doctrinal.test.d.ts → lib/extractors/links.code_titles.test.d.ts} +0 -0
- package/dist/{src/lib/extractors/links.european.test.d.ts → lib/extractors/links.doctrinal.test.d.ts} +0 -0
- package/dist/{src/lib/extractors/links.test.d.ts → lib/extractors/links.european.test.d.ts} +0 -0
- package/dist/{src/lib/extractors/portion_references.test.d.ts → lib/extractors/links.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/extractors/portion_references.d.ts +0 -0
- package/dist/{src/lib/extractors/portion_references_cpu.test.d.ts → lib/extractors/portion_references.test.d.ts} +0 -0
- package/dist/{src/lib/extractors/qualified_versions.test.d.ts → lib/extractors/portion_references_cpu.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/extractors/qualified_versions.d.ts +0 -0
- package/dist/{src/lib/extractors/references.test.d.ts → lib/extractors/qualified_versions.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/extractors/quoted_text.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/references.d.ts +0 -0
- package/dist/{src/lib/text_parsers → lib/extractors}/references.test.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/table_of_contents.d.ts +0 -0
- package/dist/{src/lib → lib}/extractors/table_of_contents.test.d.ts +0 -0
- package/dist/{src/lib → lib}/f_legi/resolver.test.d.ts +0 -0
- package/dist/{src/lib → lib}/index.d.ts +0 -0
- package/dist/{src/lib → lib}/json.d.ts +0 -0
- package/dist/{src/lib/legi/canutes_article_preload.test.d.ts → lib/legi/article_abrogation.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_candidates.test.d.ts → lib/legi/article_history.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_resolver.test.d.ts → lib/legi/canutes_article_preload.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_resolver_cache.test.d.ts → lib/legi/canutes_candidates.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_resolver_europe.test.d.ts → lib/legi/canutes_resolver.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_root_cid_index.integration.test.d.ts → lib/legi/canutes_resolver_cache.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_section_roots.test.d.ts → lib/legi/canutes_resolver_europe.test.d.ts} +0 -0
- package/dist/{src/lib/legi/canutes_text_titles_cache.integration.test.d.ts → lib/legi/canutes_root_cid_index.integration.test.d.ts} +0 -0
- package/dist/{src/lib/legi/resolver.test.d.ts → lib/legi/canutes_section_roots.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/legi/canutes_sql.d.ts +0 -0
- package/dist/{src/lib → lib}/legi/canutes_text_titles_cache.d.ts +0 -0
- package/dist/{src/lib/linkers/cited-article.test.d.ts → lib/legi/canutes_text_titles_cache.integration.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/legi/canutes_titles_metrics.d.ts +0 -0
- package/dist/{src/lib/linkers/reference-mode.test.d.ts → lib/legi/modifying_act_article_real.test.d.ts} +0 -0
- package/dist/{src/lib/server/administrative_acts_autocompletion.test.d.ts → lib/legi/publication_components.test.d.ts} +0 -0
- package/dist/{src/lib/server/akn_rendering.test.d.ts → lib/legi/resolver.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/legi/text_titles_infos.d.ts +0 -0
- package/dist/{src/lib/server/ameli_autocompletion.test.d.ts → lib/linkers/ambiguous_publication.test.d.ts} +0 -0
- package/dist/{src/lib/server/assemblee_amendment_search.test.d.ts → lib/linkers/cited-article.test.d.ts} +0 -0
- package/dist/{src/lib/server/assemblee_document_search.test.d.ts → lib/linkers/enumeration_scope.test.d.ts} +0 -0
- package/dist/{src/lib/server/atomic_files.test.d.ts → lib/linkers/html_decision_capture.test.d.ts} +0 -0
- package/dist/{src/lib/server/bill_action_resolver_invariance.test.d.ts → lib/linkers/html_named_text_article.test.d.ts} +0 -0
- package/dist/{src/lib/server/bill_citation_anaphora.test.d.ts → lib/linkers/html_publication_93_859_real.test.d.ts} +0 -0
- package/dist/{src/lib/server/bill_comparison.test.d.ts → lib/linkers/html_structure_real.test.d.ts} +0 -0
- package/dist/{src/lib/server/bill_target_scope.test.d.ts → lib/linkers/html_undecidable_real.test.d.ts} +0 -0
- package/dist/{src/lib/server/bofip_autocompletion.test.d.ts → lib/linkers/link_decision_html.test.d.ts} +0 -0
- package/dist/{src/lib/server/boss_autocompletion.test.d.ts → lib/linkers/named_text_article.test.d.ts} +0 -0
- package/dist/{src/lib/server/canutes_only_compatibility.test.d.ts → lib/linkers/quoted_section_scope.test.d.ts} +0 -0
- package/dist/{src/lib/server/document_git_checkpoint.test.d.ts → lib/linkers/reference-mode.test.d.ts} +0 -0
- package/dist/{src/lib → lib}/links.d.ts +6 -6
- /package/dist/{src/lib/server/enriched_document_checkpoint.test.d.ts → lib/links.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/loaders/assemblee.d.ts +0 -0
- /package/dist/{src/lib → lib}/loaders/legifrance.d.ts +0 -0
- /package/dist/{src/lib → lib}/markdown.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/administrative_acts_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/server/europe_autocompletion.test.d.ts → lib/server/administrative_acts_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib/server/flegi_profiling.test.d.ts → lib/server/akn_rendering.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/alineas/alineas_images_utils.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/ameli_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/server/html_simplifier.test.d.ts → lib/server/ameli_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/assemblee_amendment_search.d.ts +0 -0
- /package/dist/{src/lib/server/international_treaties_autocompletion.test.d.ts → lib/server/assemblee_amendment_search.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/assemblee_document_search.d.ts +0 -0
- /package/dist/{src/lib/server/judilibre_search.test.d.ts → lib/server/assemblee_document_search.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/atomic_files.d.ts +0 -0
- /package/dist/{src/lib/server/legifrance_article_search.test.d.ts → lib/server/atomic_files.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/auditors/config.d.ts +0 -0
- /package/dist/{src/lib/server/legifrance_jurisprudence_search.test.d.ts → lib/server/bill_action_resolver_invariance.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/bill_action_target_fixtures.d.ts +0 -0
- /package/dist/{src/lib/server/local_acts_autocompletion.test.d.ts → lib/server/bill_citation_anaphora.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/bill_comparison.d.ts +0 -0
- /package/dist/{src/lib/server/masquage-typesense.test.d.ts → lib/server/bill_comparison.test.d.ts} +0 -0
- /package/dist/{src/lib/server/parsed_amendments.test.d.ts → lib/server/bill_target_scope.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/bofip_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/server/parsed_bills.test.d.ts → lib/server/bofip_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/boss_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/server/raa_autocompletion.test.d.ts → lib/server/boss_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/canutes_legacy_candidates.d.ts +0 -0
- /package/dist/{src/lib/server/senat_amendment_search.test.d.ts → lib/server/canutes_only_compatibility.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/config.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/databases/canutes_root_cid_index.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/databases/canutes_text_titles_cache.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/databases/index.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/document_git_checkpoint.d.ts +0 -0
- /package/dist/{src/lib/server/senat_document_search.test.d.ts → lib/server/document_git_checkpoint.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/enriched_document_checkpoint.d.ts +0 -0
- /package/dist/{src/lib/server/shared_legal_text_sections.test.d.ts → lib/server/enriched_document_checkpoint.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/europe_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/server/sql_profiling.test.d.ts → lib/server/europe_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/f_legi/index.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/flegi_profiling.d.ts +0 -0
- /package/dist/{src/lib/server/sync_administrative_act_titles.test.d.ts → lib/server/flegi_profiling.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/html_simplifier.d.ts +0 -0
- /package/dist/{src/lib/server/sync_assemblee_legal_texts.test.d.ts → lib/server/html_simplifier.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/international_treaties_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/server/sync_local_act_titles.test.d.ts → lib/server/international_treaties_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/judilibre_search.d.ts +0 -0
- /package/dist/{src/lib/server/typesense_blue_green.test.d.ts → lib/server/judilibre_search.test.d.ts} +0 -0
- /package/dist/{src/lib/server/typesense_index_lock.test.d.ts → lib/server/jurisprudence_citations.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/action_citation_patterns.test.d.ts → lib/server/jurisprudence_jade.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/action_directives.test.d.ts → lib/server/jurisprudence_store.integration.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/action_occurrences.test.d.ts → lib/server/jurisprudence_store_closed.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/legi/resolvers.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/legifrance_article_search.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/action_position_cues.test.d.ts → lib/server/legifrance_article_search.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/legifrance_jurisprudence_search.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/action_words.test.d.ts → lib/server/legifrance_jurisprudence_search.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/linkers/html.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/local_acts_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/actions.test.d.ts → lib/server/local_acts_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/articles.test.d.ts → lib/server/masquage-typesense.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/masquage_typesense.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/citations.test.d.ts → lib/server/named_text_article_decisions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/parsed_amendments.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/dates.test.d.ts → lib/server/parsed_amendments.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/divisions.test.d.ts → lib/server/parsed_bill_abrogation.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/doctrinal_references.test.d.ts → lib/server/parsed_bill_future_consultation.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/numbers.test.d.ts → lib/server/parsed_bill_link_decisions.test.d.ts} +0 -0
- /package/dist/{src/lib/text_parsers/parsers.test.d.ts → lib/server/parsed_bills.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/raa_autocompletion.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/portions.test.d.ts → lib/server/raa_autocompletion.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/senat_amendment_search.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/prepositions.test.d.ts → lib/server/senat_amendment_search.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/senat_document_search.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/relative_locations.test.d.ts → lib/server/senat_document_search.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/senat_document_sources.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/shared_legal_text_sections.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/repeated_actions.test.d.ts → lib/server/shared_legal_text_sections.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/sql_profiling.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/search_queries.test.d.ts → lib/server/sql_profiling.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/sync_administrative_act_titles.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/simplifiers.test.d.ts → lib/server/sync_administrative_act_titles.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/sync_ameli_titles.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/sync_assemblee_legal_texts.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/texts.test.d.ts → lib/server/sync_assemblee_legal_texts.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/sync_boss_titles.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/sync_europe_titles.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/sync_international_treaty_titles.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/sync_local_act_titles.d.ts +0 -0
- /package/dist/{src/lib/text_parsers/typography.test.d.ts → lib/server/sync_local_act_titles.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/sync_raa_titles.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/tables_of_contents.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/text_parsers/transformers.d.ts +0 -0
- /package/dist/{src/lib → lib}/server/typesense_blue_green.d.ts +0 -0
- /package/dist/{src/scripts/add_links_to_assemblee_parsed_documents.d.ts → lib/server/typesense_blue_green.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/server/typesense_index_lock.d.ts +0 -0
- /package/dist/{src/scripts/add_links_to_html_document.d.ts → lib/server/typesense_index_lock.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/test/text_titles_infos.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/action_citation_patterns.d.ts +0 -0
- /package/dist/{src/scripts/add_links_to_legifrance.d.ts → lib/text_parsers/action_citation_patterns.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/action_directives.d.ts +0 -0
- /package/dist/{src/scripts/add_links_to_senat_comptes_rendus.d.ts → lib/text_parsers/action_directives.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/action_occurrences.d.ts +0 -0
- /package/dist/{src/scripts/add_links_to_senat_parsed_documents.d.ts → lib/text_parsers/action_occurrences.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/action_position_cues.d.ts +0 -0
- /package/dist/{src/scripts/associate_jorf_textes_with_assemblee_commissions.d.ts → lib/text_parsers/action_position_cues.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/action_target_scopes.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/action_words.d.ts +0 -0
- /package/dist/{src/scripts/associate_jorf_textes_with_dossiers_legislatifs_assemblee.d.ts → lib/text_parsers/action_words.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/actions.d.ts +0 -0
- /package/dist/{src/scripts/compare_legi_bills.d.ts → lib/text_parsers/actions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/amendment_action_directives.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/articles.d.ts +0 -0
- /package/dist/{src/scripts/configure_postgres_assemblee_document_triggers.d.ts → lib/text_parsers/articles.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/citations.d.ts +0 -0
- /package/dist/{src/scripts/configure_postgres_legi_resolver.d.ts → lib/text_parsers/citations.test.d.ts} +0 -0
- /package/dist/{src/scripts/configure_postgres_root_cid_index.d.ts → lib/text_parsers/code_annexes.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/dates.d.ts +0 -0
- /package/dist/{src/scripts/configure_postgres_senat_document_triggers.d.ts → lib/text_parsers/dates.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/divisions.d.ts +0 -0
- /package/dist/{src/scripts/enrich_assemblee_documents.d.ts → lib/text_parsers/divisions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/doctrinal_references.d.ts +0 -0
- /package/dist/{src/scripts/enrich_senat_documents.d.ts → lib/text_parsers/doctrinal_references.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/fragments.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/helpers.d.ts +0 -0
- /package/dist/{src/scripts/html_document_to_text.d.ts → lib/text_parsers/historical_versions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/legal_text_aliases.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/numbers.d.ts +0 -0
- /package/dist/{src/scripts/index_postgres_assemblee_amendments.d.ts → lib/text_parsers/numbers.test.d.ts} +0 -0
- /package/dist/{src/scripts/index_postgres_assemblee_texts.d.ts → lib/text_parsers/parsers.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/portions.d.ts +0 -0
- /package/dist/{src/scripts/index_postgres_judilibre.d.ts → lib/text_parsers/portions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/prepositions.d.ts +0 -0
- /package/dist/{src/scripts/index_postgres_legifrance_articles.d.ts → lib/text_parsers/prepositions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/qualified_versions.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/references.d.ts +0 -0
- /package/dist/{src/scripts/index_postgres_legifrance_jurisprudence.d.ts → lib/text_parsers/references.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/relative_locations.d.ts +0 -0
- /package/dist/{src/scripts/index_postgres_senat_amendments.d.ts → lib/text_parsers/relative_locations.test.d.ts} +0 -0
- /package/dist/{src/scripts/index_postgres_senat_texts.d.ts → lib/text_parsers/repeated_actions.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/search_queries.d.ts +0 -0
- /package/dist/{src/scripts/parse_akoma_ntoso_bill_raw.d.ts → lib/text_parsers/search_queries.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/separators.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/simplifiers.d.ts +0 -0
- /package/dist/{src/scripts/parse_assemblee_bill_raw.d.ts → lib/text_parsers/simplifiers.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/table_row_targets.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/table_unit_notes.d.ts +0 -0
- /package/dist/{src/scripts/profile_assemblee_document_parsing.d.ts → lib/text_parsers/texts.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/text_parsers/transformers.d.ts +0 -0
- /package/dist/{src/lib → lib}/text_parsers/typography.d.ts +0 -0
- /package/dist/{src/scripts/profile_canutes_bill.d.ts → lib/text_parsers/typography.test.d.ts} +0 -0
- /package/dist/{src/lib → lib}/textes.d.ts +0 -0
- /package/dist/{src/lib → lib}/timings.d.ts +0 -0
- /package/dist/{src/scripts/shared/assemblee_legislature.test.d.ts → scripts/add_links_to_assemblee_parsed_documents.d.ts} +0 -0
- /package/dist/{src/scripts/shared/checkpoint_cli_options.test.d.ts → scripts/add_links_to_html_document.d.ts} +0 -0
- /package/dist/{src/scripts/simplified_html_bill_to_table_of_contents.d.ts → scripts/add_links_to_legifrance.d.ts} +0 -0
- /package/dist/{src/scripts/simplify_word_html.d.ts → scripts/add_links_to_senat_comptes_rendus.d.ts} +0 -0
- /package/dist/{src/scripts/sync_postgres_assemblee_document_content.d.ts → scripts/add_links_to_senat_parsed_documents.d.ts} +0 -0
- /package/dist/{src/scripts → scripts}/add_positions_to_table_of_contents.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/add_references_to_html_document.d.ts +0 -0
- /package/dist/{src/scripts/sync_postgres_senat_document_content.d.ts → scripts/alimenter_jurisprudence_pilote.d.ts} +0 -0
- /package/dist/{src/scripts/test_canutes_titles_cache.d.ts → scripts/associate_jorf_textes_with_assemblee_commissions.d.ts} +0 -0
- /package/dist/{src/scripts/warm_canutes_text_titles_cache.d.ts → scripts/associate_jorf_textes_with_dossiers_legislatifs_assemblee.d.ts} +0 -0
- /package/dist/{src/scripts → scripts}/audit_doctrinal_references.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/configure.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/extract_alineas_images.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/generate_alineas_numbers_review.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/index_typesense.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/merge_reviewed_alineas_numbers.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/set_articles_missing_num.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/shared/assemblee_legislature.d.ts +0 -0
- /package/dist/{src/scripts → scripts}/shared/checkpoint_cli_options.d.ts +0 -0
|
@@ -48,6 +48,20 @@ export interface ArticlePortionAlinea {
|
|
|
48
48
|
htmlStart?: number;
|
|
49
49
|
htmlStop?: number;
|
|
50
50
|
lineIndex?: number;
|
|
51
|
+
/** Quotation marks around a table belong to this alinéa, but its HTML
|
|
52
|
+
* offsets still designate the table itself for portion edits. */
|
|
53
|
+
tableQuotation?: {
|
|
54
|
+
opening: {
|
|
55
|
+
html: string;
|
|
56
|
+
htmlStart: number;
|
|
57
|
+
htmlStop: number;
|
|
58
|
+
};
|
|
59
|
+
closing: {
|
|
60
|
+
html: string;
|
|
61
|
+
htmlStart: number;
|
|
62
|
+
htmlStop: number;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
51
65
|
}
|
|
52
66
|
export interface ArticlePortionPhrase {
|
|
53
67
|
type: "phrase";
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Sql } from 'postgres';
|
|
2
2
|
import { ReferenceParsingMode } from './references.js';
|
|
3
|
+
import { HistoricalVersionQualifier } from '../text_parsers/historical_versions.js';
|
|
4
|
+
import { NamedTextArticleTarget } from '../legi/named_text_article.js';
|
|
3
5
|
import { LegiResolver } from '../legi/resolver.js';
|
|
4
6
|
import { TextAstArticle, TextAstDivision, TextAstPosition, TextAstReference, TextAstText } from '../text_parsers/ast.js';
|
|
5
7
|
import { FragmentPosition, FragmentReverseTransformation } from '../text_parsers/fragments.js';
|
|
@@ -26,6 +28,10 @@ export interface ArticleDefinition {
|
|
|
26
28
|
export interface ArticleExternalLink {
|
|
27
29
|
article: TextAstArticle;
|
|
28
30
|
articleId?: string;
|
|
31
|
+
/** A direct version selected by an explicit historical drafting qualifier. */
|
|
32
|
+
historicalQualifiedArticle?: boolean;
|
|
33
|
+
/** Present (possibly empty) only for a uniquely selected future consultation. */
|
|
34
|
+
futureAlternativeArticleIds?: string[];
|
|
29
35
|
/**
|
|
30
36
|
* Defined only when no version of the cited article number is active at the
|
|
31
37
|
* reference date and the number has a single version chain in the cited
|
|
@@ -89,6 +95,11 @@ export interface TextEuropeanLink {
|
|
|
89
95
|
url?: string;
|
|
90
96
|
}
|
|
91
97
|
export interface TextExternalLink {
|
|
98
|
+
publicationComponentCids?: string[];
|
|
99
|
+
/** Article embedded in a named-text citation, resolved before rendering. */
|
|
100
|
+
namedArticle?: NamedTextArticleTarget & {
|
|
101
|
+
num: string;
|
|
102
|
+
};
|
|
92
103
|
/**
|
|
93
104
|
* Only defined when a transformation was used to convert input text
|
|
94
105
|
* to simplified text.
|
|
@@ -100,8 +111,103 @@ export interface TextExternalLink {
|
|
|
100
111
|
type: "external_text";
|
|
101
112
|
}
|
|
102
113
|
export type TextLink = TextEuropeanLink | TextExternalLink;
|
|
114
|
+
/** A source span, before rendering, identifies a citation even when its URL is shared. */
|
|
115
|
+
export interface LinkOccurrence {
|
|
116
|
+
documentId: string;
|
|
117
|
+
blockId?: string;
|
|
118
|
+
insideFrenchQuotes?: boolean;
|
|
119
|
+
sourceStart: number;
|
|
120
|
+
sourceStop: number;
|
|
121
|
+
}
|
|
122
|
+
export type LinkDecisionReason = "composant_publication" | "article_futur_a_date_reference" | "article_abroge_avant_date_reference" | "indice_structurel" | "structure_absente" | "reference_historique_explicite" | "publication_rectificative" | "plusieurs_candidats_indepartageables" | "cid_non_etabli" | "donnees_insuffisantes" | "hors_perimetre";
|
|
123
|
+
export interface LinkDecisionCandidate {
|
|
124
|
+
kind: "article" | "text";
|
|
125
|
+
id: string;
|
|
126
|
+
cid: string;
|
|
127
|
+
debut?: string;
|
|
128
|
+
fin?: string;
|
|
129
|
+
role: "retenu" | "alternatif" | "ecarte";
|
|
130
|
+
reasons: LinkDecisionReason[];
|
|
131
|
+
}
|
|
132
|
+
export interface LinkDecision {
|
|
133
|
+
occurrence: LinkOccurrence;
|
|
134
|
+
kind: LinkDecisionEvidence["kind"];
|
|
135
|
+
recognition: "reconnue" | "sans_candidat" | "non_prise_en_charge" | "non_reconnue";
|
|
136
|
+
date: {
|
|
137
|
+
value: string;
|
|
138
|
+
source: "appelant" | "qualification" | "document" | "aujourdhui";
|
|
139
|
+
qualifierRange?: {
|
|
140
|
+
start: number;
|
|
141
|
+
stop: number;
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
textCids: string[];
|
|
145
|
+
candidates: LinkDecisionCandidate[];
|
|
146
|
+
consultationId?: string;
|
|
147
|
+
warnings: LinkDecisionReason[];
|
|
148
|
+
projection: {
|
|
149
|
+
mode: "etablie";
|
|
150
|
+
targetIds: string[];
|
|
151
|
+
} | {
|
|
152
|
+
mode: "indicative";
|
|
153
|
+
candidateIds: string[];
|
|
154
|
+
} | {
|
|
155
|
+
mode: "aucune";
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
export interface LinkDecisionEvidence {
|
|
159
|
+
/** Consultation established by published-component structure, not projection. */
|
|
160
|
+
publicationComponent?: boolean;
|
|
161
|
+
kind: "article" | "text" | "european_text";
|
|
162
|
+
occurrence: LinkOccurrence;
|
|
163
|
+
callerDate?: string;
|
|
164
|
+
documentDate?: string;
|
|
165
|
+
/** A qualifier only governs the citation whose source span lies within its scope. */
|
|
166
|
+
qualifier?: {
|
|
167
|
+
date: string;
|
|
168
|
+
range: {
|
|
169
|
+
start: number;
|
|
170
|
+
stop: number;
|
|
171
|
+
};
|
|
172
|
+
scope: {
|
|
173
|
+
start: number;
|
|
174
|
+
stop: number;
|
|
175
|
+
};
|
|
176
|
+
};
|
|
177
|
+
/** The CONTEXTE text CID, or a text CID explicitly established by the citation. */
|
|
178
|
+
textCid?: string;
|
|
179
|
+
textCids?: string[];
|
|
180
|
+
/** Explicitly labelled rectificatifs of the selected original publication. */
|
|
181
|
+
rectificatifCids?: string[];
|
|
182
|
+
/** Selected using the law-specific LEGI/exceptional JORF rule. */
|
|
183
|
+
lawArticleTargetId?: string;
|
|
184
|
+
/** No law version satisfied the selection rule. */
|
|
185
|
+
lawArticleUnresolved?: boolean;
|
|
186
|
+
/** Evidence from a resolver; an empty list is distinct from unavailable evidence. */
|
|
187
|
+
candidates?: Array<{
|
|
188
|
+
kind: "article" | "text";
|
|
189
|
+
id: string;
|
|
190
|
+
cid: string;
|
|
191
|
+
debut?: string;
|
|
192
|
+
fin?: string;
|
|
193
|
+
/** SCTA can qualify a collision but cannot override CONTEXTE. */
|
|
194
|
+
structure?: "valable" | "absente" | "invalide";
|
|
195
|
+
abrogationVerified?: boolean;
|
|
196
|
+
}>;
|
|
197
|
+
recognized?: boolean;
|
|
198
|
+
}
|
|
199
|
+
export interface LinkDecisionObserver {
|
|
200
|
+
documentId: string;
|
|
201
|
+
blockId?: string;
|
|
202
|
+
onDecision: (decision: LinkDecision) => void;
|
|
203
|
+
}
|
|
204
|
+
/** Pure, opt-in oracle. Neither legacy link fields nor renderer output use it yet. */
|
|
205
|
+
export declare function decideLinkOccurrence(evidence: LinkDecisionEvidence): LinkDecision;
|
|
103
206
|
export interface TextLinksParserState {
|
|
104
207
|
articleId?: string;
|
|
208
|
+
historicalQualifier?: HistoricalVersionQualifier;
|
|
209
|
+
/** Multiple code-title CIDs contain the cited active article; no text is established. */
|
|
210
|
+
ambiguousCodeTitleCids?: string[];
|
|
105
211
|
codeId?: string;
|
|
106
212
|
constitutionId?: string;
|
|
107
213
|
decreeId?: string;
|
|
@@ -147,10 +253,15 @@ type TextLinksIterationDiagnostics = {
|
|
|
147
253
|
textLinkCount: number;
|
|
148
254
|
textLinkMs: number;
|
|
149
255
|
};
|
|
150
|
-
export declare function extractTextLinks({ canutesDb, context, date, includeInternalArticleLinks, legiResolver: providedLegiResolver, logIgnoredReferencesTypes, logPartialReferences, logReferences, parsingMode, state: inputState, transformation, }: {
|
|
256
|
+
export declare function extractTextLinks({ canutesDb, callerDate, context, date: documentDate, decisionObserver, extraReferences, includeInternalArticleLinks, legiResolver: providedLegiResolver, logIgnoredReferencesTypes, logPartialReferences, logReferences, parsingMode, state: inputState, transformation, }: {
|
|
151
257
|
canutesDb?: Sql;
|
|
258
|
+
/** An explicitly requested resolution date overrides a date quoted in the source. */
|
|
259
|
+
callerDate?: string;
|
|
152
260
|
context: TextParserContext;
|
|
153
261
|
date: string;
|
|
262
|
+
decisionObserver?: LinkDecisionObserver;
|
|
263
|
+
/** HTML table-cell references qualified by their column heading. */
|
|
264
|
+
extraReferences?: TextAstReference[];
|
|
154
265
|
includeInternalArticleLinks?: boolean;
|
|
155
266
|
legiResolver?: LegiResolver;
|
|
156
267
|
logIgnoredReferencesTypes?: boolean;
|
|
@@ -165,13 +276,16 @@ export declare function extractTextLinks({ canutesDb, context, date, includeInte
|
|
|
165
276
|
state?: TextLinksParserState;
|
|
166
277
|
transformation?: Transformation;
|
|
167
278
|
}): AsyncGenerator<DefinitionOrLink, void>;
|
|
168
|
-
export declare function iterReferenceLinks({ articleDefinitionByNumByTextId: articleDefinitionByNumByTextIdInput, inOriginalCitation, includeInternalArticleLinks, legiResolver, context, date, logIgnoredReferencesTypes, logPartialReferences, originalPositionsFromTransformedIterator, reference, iterationDiagnostics: inputIterationDiagnostics, resolverDiagnostics: inputResolverDiagnostics, state: inputState, }: {
|
|
169
|
-
articleDefinitionByNumByTextId?: Record<string, Record<string, ArticleDefinition>>;
|
|
279
|
+
export declare function iterReferenceLinks({ articleDefinitionByNumByTextId: articleDefinitionByNumByTextIdInput, callerDate, inOriginalCitation, includeInternalArticleLinks, legiResolver, context, date: inputDate, decisionObserver, documentDate, logIgnoredReferencesTypes, logPartialReferences, originalPositionsFromTransformedIterator, reference, iterationDiagnostics: inputIterationDiagnostics, resolverDiagnostics: inputResolverDiagnostics, state: inputState, }: {
|
|
280
|
+
articleDefinitionByNumByTextId?: Record<string, Record<string, ArticleDefinition[]>>;
|
|
281
|
+
callerDate?: string;
|
|
170
282
|
inOriginalCitation?: boolean;
|
|
171
283
|
includeInternalArticleLinks?: boolean;
|
|
172
284
|
legiResolver: LegiResolver;
|
|
173
285
|
context: TextParserContext;
|
|
174
286
|
date: string;
|
|
287
|
+
decisionObserver?: LinkDecisionObserver;
|
|
288
|
+
documentDate?: string;
|
|
175
289
|
logIgnoredReferencesTypes?: boolean;
|
|
176
290
|
logPartialReferences?: boolean;
|
|
177
291
|
originalPositionsFromTransformedIterator?: Generator<FragmentReverseTransformation, void, FragmentPosition | undefined>;
|
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import { Sql } from 'postgres';
|
|
2
|
-
import { LegiResolver, LegiArticleInfo, LegiSectionInfo, PreloadActiveArticlesByTextIdsOptions, PreloadTextTitlesInfosOptions } from '../legi/resolver.js';
|
|
2
|
+
import { LegiResolver, LegiArticleAbrogationProof, LegiArticleInfo, LegiArticleHistoryInfo, LegiArticleStructureProof, LegiSectionInfo, PreloadActiveArticlesByTextIdsOptions, PreloadTextTitlesInfosOptions } from '../legi/resolver.js';
|
|
3
3
|
export type FlegiArticleInfo = LegiArticleInfo;
|
|
4
4
|
export type FlegiSectionInfo = LegiSectionInfo;
|
|
5
5
|
export declare function checkFlegiResolverDatabase(flegiDb: Sql): Promise<void>;
|
|
6
6
|
export declare class FlegiResolver extends LegiResolver {
|
|
7
7
|
private readonly flegiDb;
|
|
8
|
+
private readonly articleHistoryInfoByTextAndNum;
|
|
9
|
+
getArticleHistoryInfo({ num, textId, }: {
|
|
10
|
+
num: string | undefined;
|
|
11
|
+
textId: string;
|
|
12
|
+
}): Promise<LegiArticleHistoryInfo | undefined>;
|
|
8
13
|
private readonly articleRowsByNumByTextAndDate;
|
|
9
14
|
private readonly articleNumsLoadedByTextAndDate;
|
|
10
15
|
private readonly articleRowsByContextTextId;
|
|
11
16
|
private readonly directSectionChildrenByParentAndDate;
|
|
12
|
-
private readonly
|
|
13
|
-
private readonly directSectionChildrenRootPromises;
|
|
17
|
+
private readonly directSectionChildrenParentPromises;
|
|
14
18
|
private readonly globalArticleRowsByNumAndDate;
|
|
15
19
|
private readonly rootTextIdsByTextId;
|
|
16
20
|
private readonly contextTextIdsByTextId;
|
|
@@ -23,6 +27,21 @@ export declare class FlegiResolver extends LegiResolver {
|
|
|
23
27
|
num: string | undefined;
|
|
24
28
|
textId: string;
|
|
25
29
|
}): Promise<FlegiArticleInfo[]>;
|
|
30
|
+
getLawArticleType({ articleId, textId, }: {
|
|
31
|
+
articleId: string;
|
|
32
|
+
textId: string;
|
|
33
|
+
}): Promise<"AUTONOME" | "ENTIEREMENT_MODIF" | "PARTIELLEMENT_MODIF" | undefined>;
|
|
34
|
+
getVerifiedPublicationComponents(candidateCids: string[]): Promise<import('../legi/resolver.js').LegiPublicationComponentsProof | undefined>;
|
|
35
|
+
getVerifiedArticleAbrogation({ date, num, textId, }: {
|
|
36
|
+
date: string;
|
|
37
|
+
num: string;
|
|
38
|
+
textId: string;
|
|
39
|
+
}): Promise<LegiArticleAbrogationProof | undefined>;
|
|
40
|
+
getVerifiedArticleStructure({ date, num, textId, }: {
|
|
41
|
+
date: string;
|
|
42
|
+
num: string;
|
|
43
|
+
textId: string;
|
|
44
|
+
}): Promise<LegiArticleStructureProof | undefined>;
|
|
26
45
|
getDirectSectionChildren({ date, parentPath, }: {
|
|
27
46
|
date: string;
|
|
28
47
|
parentPath: string;
|
|
@@ -47,7 +66,7 @@ export declare class FlegiResolver extends LegiResolver {
|
|
|
47
66
|
private getActiveArticleRowsByNum;
|
|
48
67
|
private getActiveArticleRowsForContextTextIdsWithRoots;
|
|
49
68
|
private queryActiveArticleRowsForContextTextIds;
|
|
50
|
-
private
|
|
69
|
+
private preloadDirectSectionChildrenByParentPath;
|
|
51
70
|
private getTextIdFromSegmentIdUsingContextHeuristic;
|
|
52
71
|
private getTextIdFromSegmentIdUsingSctaHeuristic;
|
|
53
72
|
private getContextTextIdsByTextIds;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { LegiArticleAbrogationProof, LegiArticleInfo } from './resolver.js';
|
|
2
|
+
export type ArticleAbrogationRow = {
|
|
3
|
+
id: string;
|
|
4
|
+
num: string | null;
|
|
5
|
+
textId: string | null;
|
|
6
|
+
dateDebut: string | null;
|
|
7
|
+
dateFin: string | null;
|
|
8
|
+
etat: string | null;
|
|
9
|
+
versions: {
|
|
10
|
+
id: string;
|
|
11
|
+
dateDebut: string | null;
|
|
12
|
+
dateFin: string | null;
|
|
13
|
+
etat?: string | null;
|
|
14
|
+
}[] | null;
|
|
15
|
+
};
|
|
16
|
+
/** Only a complete, unique chain matching the actual resolver's candidates
|
|
17
|
+
* within the same read-only snapshot can certify an expired version. */
|
|
18
|
+
export declare function verifyArticleAbrogation({ candidates, date, missingContext, num, rows, textId, }: {
|
|
19
|
+
candidates: LegiArticleInfo[];
|
|
20
|
+
date: string;
|
|
21
|
+
missingContext: number;
|
|
22
|
+
num: string;
|
|
23
|
+
rows: ArticleAbrogationRow[];
|
|
24
|
+
textId: string;
|
|
25
|
+
}): LegiArticleAbrogationProof | undefined;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { LegiArticleHistoryInfo } from './resolver.js';
|
|
2
|
+
/** Minimal view of an article and its declared version chain. */
|
|
3
|
+
export interface ArticleHistorySourceRow {
|
|
4
|
+
dateDebut: string | null;
|
|
5
|
+
id: string;
|
|
6
|
+
versions: {
|
|
7
|
+
VERSION?: unknown;
|
|
8
|
+
} | null;
|
|
9
|
+
}
|
|
10
|
+
/** Return the latest entry point only when every row declares the same chain. */
|
|
11
|
+
export declare function articleHistoryInfoFromRows(rows: ArticleHistorySourceRow[]): LegiArticleHistoryInfo | undefined;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LegiArticleInfo, LegiArticleStructureProof } from './resolver.js';
|
|
2
|
+
export type DatedStructureLink = {
|
|
3
|
+
dateDebut: string | null;
|
|
4
|
+
dateFin: string | null;
|
|
5
|
+
};
|
|
6
|
+
/** A missing, duplicated or malformed edge is not evidence against a candidate. */
|
|
7
|
+
export declare function structureStatusFromCompletePath(links: DatedStructureLink[] | undefined, date: string): "valable" | "invalide" | undefined;
|
|
8
|
+
/** The snapshot contains the same candidates as its structural evidence. */
|
|
9
|
+
export declare function verifiedArticleStructureProof(candidates: LegiArticleInfo[], paths: Map<string, DatedStructureLink[] | undefined>, date: string, textId: string, num: string): LegiArticleStructureProof | undefined;
|
|
@@ -1,24 +1,10 @@
|
|
|
1
1
|
import { CanutesSql } from './canutes_sql.js';
|
|
2
|
-
import { LegiResolver, LegiArticleHistoryInfo, LegiArticleInfo, LegiSectionInfo, PreloadActiveArticlesByTextIdsOptions, PreloadTextTitlesInfosOptions } from './resolver.js';
|
|
2
|
+
import { LegiResolver, LegiArticleAbrogationProof, LegiArticleHistoryInfo, LegiArticleInfo, LegiArticleStructureProof, LegiSectionInfo, PreloadActiveArticlesByTextIdsOptions, PreloadTextTitlesInfosOptions } from './resolver.js';
|
|
3
3
|
/**
|
|
4
4
|
* Minimal structural view of a Légifrance article row needed to compute an
|
|
5
5
|
* article history entry point; shared with the audit preload.
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
8
|
-
dateDebut: string | null;
|
|
9
|
-
id: string;
|
|
10
|
-
versions: {
|
|
11
|
-
VERSION?: unknown;
|
|
12
|
-
} | null;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Group article rows by version chain (the set of ids listed in their
|
|
16
|
-
* VERSIONS section, always including the row's own id) and return the latest
|
|
17
|
-
* version of the chain, but only when exactly one chain exists for the
|
|
18
|
-
* requested number. Several chains mean the number was reused by distinct
|
|
19
|
-
* articles: the history would then be ambiguous.
|
|
20
|
-
*/
|
|
21
|
-
export declare function articleHistoryInfoFromRows(rows: ArticleHistorySourceRow[]): LegiArticleHistoryInfo | undefined;
|
|
7
|
+
export { articleHistoryInfoFromRows, type ArticleHistorySourceRow, } from './article_history.js';
|
|
22
8
|
export declare class CanutesResolver extends LegiResolver {
|
|
23
9
|
private readonly canutesDb;
|
|
24
10
|
private readonly articleHistoryInfoByTextAndNum;
|
|
@@ -34,6 +20,21 @@ export declare class CanutesResolver extends LegiResolver {
|
|
|
34
20
|
num: string | undefined;
|
|
35
21
|
textId: string;
|
|
36
22
|
}): Promise<LegiArticleInfo[]>;
|
|
23
|
+
getLawArticleType({ articleId, textId, }: {
|
|
24
|
+
articleId: string;
|
|
25
|
+
textId: string;
|
|
26
|
+
}): Promise<"AUTONOME" | "ENTIEREMENT_MODIF" | "PARTIELLEMENT_MODIF" | undefined>;
|
|
27
|
+
getVerifiedPublicationComponents(candidateCids: string[]): Promise<import('./resolver.js').LegiPublicationComponentsProof | undefined>;
|
|
28
|
+
getVerifiedArticleAbrogation({ date, num, textId, }: {
|
|
29
|
+
date: string;
|
|
30
|
+
num: string;
|
|
31
|
+
textId: string;
|
|
32
|
+
}): Promise<LegiArticleAbrogationProof | undefined>;
|
|
33
|
+
getVerifiedArticleStructure({ date, num, textId, }: {
|
|
34
|
+
date: string;
|
|
35
|
+
num: string;
|
|
36
|
+
textId: string;
|
|
37
|
+
}): Promise<LegiArticleStructureProof | undefined>;
|
|
37
38
|
preloadActiveArticlesByTextIds({ date, nums, textIds, }: PreloadActiveArticlesByTextIdsOptions): Promise<void>;
|
|
38
39
|
getArticleHistoryInfo({ num, textId, }: {
|
|
39
40
|
num: string | undefined;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { LegiArticleInfo, LegiResolver } from './resolver.js';
|
|
2
|
+
export declare function supportsModifyingArticleRule(nature: string | undefined): boolean;
|
|
3
|
+
/** Select the consultation article of a law, ordinance or decree, never a code.
|
|
4
|
+
* Sentinel LEGI periods do not prove validity, but the version still counts
|
|
5
|
+
* when testing the unique modificative-version exception. Historical API
|
|
6
|
+
* names are retained for resolver compatibility.
|
|
7
|
+
*/
|
|
8
|
+
export declare function selectLawArticle({ candidates, date, legiResolver, textId, }: {
|
|
9
|
+
candidates: LegiArticleInfo[];
|
|
10
|
+
date: string;
|
|
11
|
+
legiResolver: LegiResolver;
|
|
12
|
+
textId: string;
|
|
13
|
+
}): Promise<LegiArticleInfo | undefined>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { LegiArticleInfo, LegiResolver } from './resolver.js';
|
|
2
|
+
export interface NamedTextArticleTarget {
|
|
3
|
+
articleId?: string;
|
|
4
|
+
historyArticleId?: string;
|
|
5
|
+
}
|
|
6
|
+
/** Keep the resolver evidence with the rendering target so extraction and
|
|
7
|
+
* rendering cannot independently choose different versions of a citation.
|
|
8
|
+
*/
|
|
9
|
+
export declare function resolveNamedTextArticle({ date, isLaw, legiResolver, num, textId, }: {
|
|
10
|
+
date: string;
|
|
11
|
+
/** Historical option name: includes ordinances and decrees. */
|
|
12
|
+
isLaw?: boolean;
|
|
13
|
+
legiResolver: LegiResolver;
|
|
14
|
+
num: string;
|
|
15
|
+
textId: string;
|
|
16
|
+
}): Promise<{
|
|
17
|
+
candidates: (LegiArticleInfo & {
|
|
18
|
+
textId: string;
|
|
19
|
+
})[];
|
|
20
|
+
target: NamedTextArticleTarget;
|
|
21
|
+
}>;
|
|
22
|
+
export declare function getNamedTextArticleTarget(options: Parameters<typeof resolveNamedTextArticle>[0]): Promise<NamedTextArticleTarget>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { LegiPublicationComponentsProof } from './resolver.js';
|
|
2
|
+
/** Published JORF components, NOT dated LEGI structure or article validity. */
|
|
3
|
+
export interface PublicationComponentRow {
|
|
4
|
+
cid: string;
|
|
5
|
+
nature: string | null;
|
|
6
|
+
num: string | null;
|
|
7
|
+
dateTexte: string | null;
|
|
8
|
+
datePubli: string | null;
|
|
9
|
+
nor: string | null;
|
|
10
|
+
hasVisas: boolean;
|
|
11
|
+
hasSignataires: boolean;
|
|
12
|
+
children: Array<{
|
|
13
|
+
id: string;
|
|
14
|
+
kind: string;
|
|
15
|
+
title: string | null;
|
|
16
|
+
}> | null;
|
|
17
|
+
}
|
|
18
|
+
/** Deliberately bounded domain: one signed body of direct articles and one
|
|
19
|
+
* separately published, unnumbered Annex root in the very same JORF issue.
|
|
20
|
+
* Neither the title, NOR, absent signatures nor sentinel dates alone is proof.
|
|
21
|
+
*/
|
|
22
|
+
export declare function verifyPublicationComponents(candidateCids: string[], rows: PublicationComponentRow[]): LegiPublicationComponentsProof | undefined;
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
import { PublicationComponentRow } from './publication_components.js';
|
|
2
|
+
export interface LegiPublicationComponentsProof {
|
|
3
|
+
candidates: PublicationComponentRow[];
|
|
4
|
+
bodyCid: string;
|
|
5
|
+
annexCid: string;
|
|
6
|
+
}
|
|
1
7
|
export interface LegiArticleInfo {
|
|
2
8
|
dateDebut: string;
|
|
3
9
|
dateFin: string;
|
|
@@ -5,6 +11,20 @@ export interface LegiArticleInfo {
|
|
|
5
11
|
num: string | null;
|
|
6
12
|
textId: string | null;
|
|
7
13
|
}
|
|
14
|
+
export type LawArticleType = "AUTONOME" | "ENTIEREMENT_MODIF" | "PARTIELLEMENT_MODIF";
|
|
15
|
+
/** An abrogation proof must travel with the exact version set read in its
|
|
16
|
+
* snapshot. Consumers must compare it with the candidates already resolved
|
|
17
|
+
* for the occurrence before using the terminal version for consultation.
|
|
18
|
+
*/
|
|
19
|
+
export interface LegiArticleAbrogationProof {
|
|
20
|
+
candidates: LegiArticleInfo[];
|
|
21
|
+
terminalId: string;
|
|
22
|
+
}
|
|
23
|
+
/** Verified edges and candidates from one read-only snapshot, for a collision only. */
|
|
24
|
+
export interface LegiArticleStructureProof {
|
|
25
|
+
candidates: LegiArticleInfo[];
|
|
26
|
+
structures: Record<string, "valable" | "invalide">;
|
|
27
|
+
}
|
|
8
28
|
/**
|
|
9
29
|
* Entry point to the history of an article: the latest version of the unique
|
|
10
30
|
* version chain known for a cited article number within a cited text.
|
|
@@ -34,11 +54,31 @@ export type PreloadActiveArticlesByTextIdsOptions = {
|
|
|
34
54
|
textIds: Iterable<string | undefined>;
|
|
35
55
|
};
|
|
36
56
|
export declare abstract class LegiResolver {
|
|
57
|
+
/** Collision only; all metadata and root children read in one stable snapshot. */
|
|
58
|
+
getVerifiedPublicationComponents(candidateCids: string[]): Promise<LegiPublicationComponentsProof | undefined>;
|
|
37
59
|
abstract getActiveArticlesByTextAndNum(options: {
|
|
38
60
|
date: string;
|
|
39
61
|
num: string | undefined;
|
|
40
62
|
textId: string;
|
|
41
63
|
}): Promise<LegiArticleInfo[]>;
|
|
64
|
+
/** Law, ordinance or decree TYPE; historical name retained for compatibility.
|
|
65
|
+
* Only consulted for a single LEGI version competing with its JORF original.
|
|
66
|
+
*/
|
|
67
|
+
getLawArticleType(options: {
|
|
68
|
+
articleId: string;
|
|
69
|
+
textId: string;
|
|
70
|
+
}): Promise<LawArticleType | undefined>;
|
|
71
|
+
/** Optional, collision-only proof; no proof is safer than a stale one. */
|
|
72
|
+
getVerifiedArticleAbrogation(options: {
|
|
73
|
+
date: string;
|
|
74
|
+
num: string;
|
|
75
|
+
textId: string;
|
|
76
|
+
}): Promise<LegiArticleAbrogationProof | undefined>;
|
|
77
|
+
getVerifiedArticleStructure(options: {
|
|
78
|
+
date: string;
|
|
79
|
+
num: string;
|
|
80
|
+
textId: string;
|
|
81
|
+
}): Promise<LegiArticleStructureProof | undefined>;
|
|
42
82
|
/**
|
|
43
83
|
* Latest version of the unique version chain of an article number within a
|
|
44
84
|
* text, or `undefined` when the number is unknown, ambiguous (several
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const enumerationParagraphs: {
|
|
2
|
+
cid: string;
|
|
3
|
+
title: string;
|
|
4
|
+
nums: string[];
|
|
5
|
+
html: string;
|
|
6
|
+
}[];
|
|
7
|
+
export declare const historicalEnumerationParagraph: {
|
|
8
|
+
html: string;
|
|
9
|
+
cid: string;
|
|
10
|
+
title: string;
|
|
11
|
+
nums: string[];
|
|
12
|
+
};
|
|
13
|
+
export declare const constructionEnumerationParagraph: {
|
|
14
|
+
cid: string;
|
|
15
|
+
title: string;
|
|
16
|
+
nums: string[];
|
|
17
|
+
html: string;
|
|
18
|
+
};
|
|
19
|
+
export declare const quotedAmendmentWithPastilles: string;
|
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
import { CanutesSql } from '../legi/canutes_sql.js';
|
|
2
|
-
import { DefinitionOrLink, TextLinksParserState } from '../extractors/links.js';
|
|
2
|
+
import { DefinitionOrLink, LinkDecision, LinkDecisionObserver, TextLinksParserState } from '../extractors/links.js';
|
|
3
3
|
import { ReferenceParsingMode } from '../extractors/references.js';
|
|
4
4
|
import { LegiResolver } from '../legi/resolver.js';
|
|
5
5
|
import { LinkType } from '../links.js';
|
|
6
6
|
import { FragmentPosition } from '../text_parsers/fragments.js';
|
|
7
7
|
import { TextParserContext } from '../text_parsers/parsers.js';
|
|
8
8
|
import { Transformation } from '../text_parsers/transformers.js';
|
|
9
|
-
export declare function addLinksToHtml({ canutesDb, excludedHtmlRanges, includeInternalArticleLinks, legiResolver: providedLegiResolver, date, html, linkBaseUrl, linkType, logIgnoredReferencesTypes, logPartialReferences, logReferences, onLink, parsingMode, previousContext, state, }: {
|
|
9
|
+
export declare function addLinksToHtml({ canutesDb, callerDate, excludedHtmlRanges, includeInternalArticleLinks, legiResolver: providedLegiResolver, date, decisionObserver, html, linkBaseUrl, linkDecisionDocumentId, linkType, logIgnoredReferencesTypes, logPartialReferences, logReferences, onLink, parsingMode, previousContext, renderLinkDecisions, state, }: {
|
|
10
10
|
canutesDb?: CanutesSql;
|
|
11
|
+
/** Explicit resolution date, distinct from the document date. */
|
|
12
|
+
callerDate?: string;
|
|
11
13
|
excludedHtmlRanges?: FragmentPosition[];
|
|
12
14
|
includeInternalArticleLinks?: boolean;
|
|
13
15
|
legiResolver?: LegiResolver;
|
|
14
16
|
date: string;
|
|
17
|
+
decisionObserver?: LinkDecisionObserver;
|
|
15
18
|
html: string;
|
|
16
19
|
linkBaseUrl: string;
|
|
20
|
+
linkDecisionDocumentId?: string;
|
|
17
21
|
linkType: LinkType;
|
|
18
22
|
logIgnoredReferencesTypes?: boolean;
|
|
19
23
|
logPartialReferences?: boolean;
|
|
@@ -21,10 +25,13 @@ export declare function addLinksToHtml({ canutesDb, excludedHtmlRanges, includeI
|
|
|
21
25
|
onLink?: (link: DefinitionOrLink, index: number) => Promise<boolean | void>;
|
|
22
26
|
parsingMode?: ReferenceParsingMode;
|
|
23
27
|
previousContext?: TextParserContext;
|
|
28
|
+
/** Render captured decisions; requires linkDecisionDocumentId. */
|
|
29
|
+
renderLinkDecisions?: boolean;
|
|
24
30
|
state?: TextLinksParserState;
|
|
25
31
|
}): Promise<{
|
|
26
32
|
context: TextParserContext;
|
|
27
33
|
output: string | null;
|
|
34
|
+
linkDecisions?: LinkDecision[];
|
|
28
35
|
}>;
|
|
29
36
|
export type OutputByType = Partial<Record<OutputType, {
|
|
30
37
|
html: string;
|
|
@@ -38,22 +45,28 @@ interface HtmlReplacement {
|
|
|
38
45
|
start: number;
|
|
39
46
|
stop: number;
|
|
40
47
|
}
|
|
41
|
-
export declare function addLinksOrReferencesToHtmlPage({ canutesDb, legiResolver: providedLegiResolver, date, defaultTextId, htmlTransformation, inputHtml, linkBaseUrl, linkType, logIgnoredReferencesTypes, logPartialReferences, logReferences, outputTypes: requestedOutputTypes, referredLegifranceTextsInfos, }: {
|
|
48
|
+
export declare function addLinksOrReferencesToHtmlPage({ canutesDb, callerDate, legiResolver: providedLegiResolver, date, defaultTextId, htmlTransformation, inputHtml, linkBaseUrl, linkDecisionDocumentId, linkType, logIgnoredReferencesTypes, logPartialReferences, logReferences, outputTypes: requestedOutputTypes, referredLegifranceTextsInfos, renderLinkDecisions, }: {
|
|
42
49
|
canutesDb?: CanutesSql;
|
|
50
|
+
/** Explicit resolution date, distinct from the document date. */
|
|
51
|
+
callerDate?: string;
|
|
43
52
|
legiResolver?: LegiResolver;
|
|
44
53
|
date: string;
|
|
45
54
|
defaultTextId?: string;
|
|
46
55
|
htmlTransformation: Transformation;
|
|
47
56
|
inputHtml: string;
|
|
48
57
|
linkBaseUrl: string;
|
|
58
|
+
linkDecisionDocumentId?: string;
|
|
49
59
|
linkType: LinkType;
|
|
50
60
|
logIgnoredReferencesTypes?: boolean;
|
|
51
61
|
logPartialReferences?: boolean;
|
|
52
62
|
logReferences?: boolean;
|
|
53
63
|
outputTypes: OutputType[];
|
|
54
64
|
referredLegifranceTextsInfos?: boolean;
|
|
65
|
+
/** Render captured decisions in link outputs; requires linkDecisionDocumentId. */
|
|
66
|
+
renderLinkDecisions?: boolean;
|
|
55
67
|
}): Promise<{
|
|
56
68
|
outputByType: OutputByType;
|
|
57
69
|
referredLegifranceTextCountByCid: Record<string, number>;
|
|
70
|
+
linkDecisions?: LinkDecision[];
|
|
58
71
|
}>;
|
|
59
72
|
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { LinkDecision, LinkDecisionObserver } from '../extractors/links.js';
|
|
2
|
+
import { FragmentReverseTransformation } from '../text_parsers/fragments.js';
|
|
3
|
+
/** Keep capture and source-span matching identical in both HTML renderers. */
|
|
4
|
+
export declare function createHtmlDecisionCapture({ captureAbrogation, captureAmbiguity, captureStructure, documentId, render, observer, }: {
|
|
5
|
+
captureAbrogation?: boolean;
|
|
6
|
+
captureAmbiguity?: boolean;
|
|
7
|
+
captureStructure?: boolean;
|
|
8
|
+
documentId?: string;
|
|
9
|
+
render: boolean;
|
|
10
|
+
observer?: LinkDecisionObserver;
|
|
11
|
+
}): {
|
|
12
|
+
decisions: LinkDecision[] | undefined;
|
|
13
|
+
observer: LinkDecisionObserver | undefined;
|
|
14
|
+
findDecision: (original: FragmentReverseTransformation | undefined) => LinkDecision | undefined;
|
|
15
|
+
findAbrogationDecision: (original: FragmentReverseTransformation | undefined) => LinkDecision | undefined;
|
|
16
|
+
findAmbiguityDecision: (original: FragmentReverseTransformation | undefined) => LinkDecision | undefined;
|
|
17
|
+
findStructureDecision: (original: FragmentReverseTransformation | undefined) => LinkDecision | undefined;
|
|
18
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { LinkDecision } from '../extractors/links.js';
|
|
2
|
+
import { LinkType } from '../links.js';
|
|
3
|
+
/** Serialize only consultation and uncertainty; projection rights stay structured. */
|
|
4
|
+
export declare function linkDecisionHtmlAttributes(decision: LinkDecision, linkType: LinkType, linkBaseUrl: string): string | undefined;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Public HTML consultation metadata; projection rights are never serialized here. */
|
|
2
|
+
export declare const linkDecisionMetadataAttributes: readonly ["data-tisseuse-warning", "data-tisseuse-candidates"];
|
|
3
|
+
export declare const linkDecisionReferenceClasses: {
|
|
4
|
+
readonly article: {
|
|
5
|
+
readonly linked: "lien_article_externe";
|
|
6
|
+
readonly undecidable: "reference_article_indecidable";
|
|
7
|
+
};
|
|
8
|
+
readonly text: {
|
|
9
|
+
readonly linked: "lien_texte_externe";
|
|
10
|
+
readonly undecidable: "reference_texte_indecidable";
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export type LinkDecisionReferenceKind = keyof typeof linkDecisionReferenceClasses;
|
|
14
|
+
export declare function isLinkDecisionWarning(code: string): boolean;
|
|
15
|
+
export declare function isLinkDecisionCandidateId(kind: LinkDecisionReferenceKind, id: string): boolean;
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import { CanutesSql } from '../legi/canutes_sql.js';
|
|
2
|
+
import { LinkDecision } from '../extractors/links.js';
|
|
2
3
|
import { ReferenceParsingMode } from '../extractors/references.js';
|
|
3
4
|
import { LegiResolver } from '../legi/resolver.js';
|
|
4
5
|
import { LinkType } from '../links.js';
|
|
5
6
|
import { TextParserContext } from '../text_parsers/parsers.js';
|
|
6
|
-
export declare function addLinksToMarkdown({ canutesDb, legiResolver: providedLegiResolver, date, linkBaseUrl, linkType, parsingMode, previousContext, text, }: {
|
|
7
|
+
export declare function addLinksToMarkdown({ canutesDb, callerDate, legiResolver: providedLegiResolver, date, linkBaseUrl, linkDecisionDocumentId, linkType, parsingMode, previousContext, text, }: {
|
|
7
8
|
canutesDb?: CanutesSql;
|
|
9
|
+
/** Explicit resolution date, distinct from the document date. */
|
|
10
|
+
callerDate?: string;
|
|
8
11
|
legiResolver?: LegiResolver;
|
|
9
12
|
date: string;
|
|
10
13
|
linkBaseUrl: string;
|
|
14
|
+
/** Capture decisions at original source offsets, independently of Markdown links. */
|
|
15
|
+
linkDecisionDocumentId?: string;
|
|
11
16
|
linkType: LinkType;
|
|
12
17
|
parsingMode?: ReferenceParsingMode;
|
|
13
18
|
previousContext?: TextParserContext;
|
|
@@ -15,4 +20,5 @@ export declare function addLinksToMarkdown({ canutesDb, legiResolver: providedLe
|
|
|
15
20
|
}): Promise<{
|
|
16
21
|
context: TextParserContext;
|
|
17
22
|
output: string | null;
|
|
23
|
+
linkDecisions?: LinkDecision[];
|
|
18
24
|
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getNamedTextArticleTarget } from '../legi/named_text_article.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const quotedSectionWithVersionProvenance = "<h6>Article 11</h6>\n<p>I. \u2013 Le chapitre V du titre Ier du livre Ier de la premi\u00E8re partie du code des transports, tel qu\u2019il r\u00E9sulte du I de l\u2019article 9 de la pr\u00E9sente loi, est compl\u00E9t\u00E9 par une section 3 ainsi r\u00E9dig\u00E9e :</p>\n<p>\u00AB Section 3</p>\n<p>\u00AB Services d\u2019information et de billettique multimodales</p>\n<p>\u00AB <i>Art. L. 1115\u20117</i>. \u2013 Les autorit\u00E9s organisatrices d\u00E9sign\u00E9es aux articles L. 1231\u20113 et L. 1241\u20111 veillent \u00E0 l\u2019existence de services d\u2019information, \u00E0 l\u2019intention des usagers, sur l\u2019ensemble des modes de d\u00E9placements dans leur ressort de comp\u00E9tence.</p>\n<p>\u00AB Un num\u00E9ro unique d\u2019appel national est cr\u00E9\u00E9 pour la r\u00E9servation et l\u2019accompagnement des personnes \u00E0 besoins sp\u00E9cifiques dans le transport ferroviaire.</p>\n<p>\u00AB <i>Art. L. 1115\u20118</i>. \u2013 Lorsqu\u2019un service num\u00E9rique multimodal proposant la vente ou la r\u00E9servation de services de transport ou de stationnement pr\u00E9sente une ou plusieurs solutions de d\u00E9placement en r\u00E9ponse \u00E0 la requ\u00EAte de l\u2019usager, celles\u2011ci sont pr\u00E9sent\u00E9es de mani\u00E8re claire et insusceptible d\u2019induire l\u2019usager en erreur. Les crit\u00E8res utilis\u00E9s pour leur s\u00E9lection et leur classement sont explicites. Ils sont appliqu\u00E9s sans discrimination \u00E0 tous les services de transport ou de stationnement int\u00E9gr\u00E9s au service num\u00E9rique multimodal et ne se fondent sur aucun \u00E9l\u00E9ment directement ou indirectement li\u00E9 \u00E0 l\u2019identit\u00E9 de l\u2019usager ou \u00E0 une consid\u00E9ration commerciale.</p>\n<p>\u00AB Lorsque les autorit\u00E9s organisatrices de la mobilit\u00E9 fournissent un service num\u00E9rique multimodal proposant la vente ou la r\u00E9servation de plusieurs services de transport ou de stationnement, les fournisseurs de services de transport et de stationnement op\u00E9rant sur leur territoire leur octroient, sur demande, un acc\u00E8s \u00E0 leurs services num\u00E9riques de vente ou de r\u00E9servation. Les conditions techniques et financi\u00E8res de cet acc\u00E8s sont d\u00E9finies par contrat. Elles doivent \u00EAtre raisonnables, proportionn\u00E9es et non discriminatoires.</p>\n<p>\u00AB Un d\u00E9cret en Conseil d\u2019\u00C9tat pr\u00E9cise les conditions d\u2019application du pr\u00E9sent article. \u00BB</p>\n<p>II. \u2013 L\u2019article L. 1115\u20117 du code des transports dans sa r\u00E9daction r\u00E9sultant du I du pr\u00E9sent article entre en vigueur le 1er d\u00E9cembre 2021.</p>";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { TextAstReference } from '../text_parsers/ast.js';
|
|
2
|
+
import { Transformation } from '../text_parsers/transformers.js';
|
|
3
|
+
/** Attach an unambiguous table-column heading to number-only cells. */
|
|
4
|
+
export declare function tableColumnTextReferences(transformation: Transformation): TextAstReference[];
|