@tricoteuses/arbre-de-la-loi
Version:
Generate ASTs from the French bills & laws; manipulate & export them to Markdown, etc.
102 lines (73 loc) • 12.8 kB
JavaScript
;
require("core-js/modules/es.object.define-property.js");
require("core-js/modules/es.object.keys.js");
require("core-js/modules/es.symbol.js");
require("core-js/modules/es.array.filter.js");
require("core-js/modules/es.object.get-own-property-descriptor.js");
require("core-js/modules/es.array.for-each.js");
require("core-js/modules/web.dom-collections.for-each.js");
require("core-js/modules/es.object.get-own-property-descriptors.js");
require("core-js/modules/es.object.define-properties.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.assertNeverDocumentNode = assertNeverDocumentNode;
exports.documentNodeWithHeadlinesTypes = exports.documentNodeTypes = exports.DocumentNodeType = exports.unstructuredTypes = exports.UnstructuredType = exports.documentTypes = exports.DocumentType = exports.divisionTypes = exports.DivisionType = void 0;
require("core-js/modules/es.set.js");
require("core-js/modules/es.object.to-string.js");
require("core-js/modules/es.string.iterator.js");
require("core-js/modules/es.array.iterator.js");
require("core-js/modules/web.dom-collections.iterator.js");
require("core-js/modules/es.object.values.js");
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
/// AST of a bill and other legislative-related documents
//
// Note: It seems that Akoma Ntoso doesn't define an annex element.
var DivisionType;
exports.DivisionType = DivisionType;
(function (DivisionType) {
DivisionType["Article"] = "article";
DivisionType["Book"] = "book";
DivisionType["Chapter"] = "chapter";
DivisionType["Part"] = "part";
DivisionType["Section"] = "section";
DivisionType["Subsection"] = "subsection";
DivisionType["Subtitle"] = "subtitle";
DivisionType["Title"] = "title";
DivisionType["Tome"] = "tome";
})(DivisionType || (exports.DivisionType = DivisionType = {}));
var divisionTypes = new Set(Object.values(DivisionType));
exports.divisionTypes = divisionTypes;
var DocumentType;
exports.DocumentType = DocumentType;
(function (DocumentType) {
DocumentType["Bill"] = "bill";
DocumentType["BillStatementOfReasons"] = "bill_statement_of_reasons";
})(DocumentType || (exports.DocumentType = DocumentType = {}));
var documentTypes = new Set(Object.values(DocumentType));
exports.documentTypes = documentTypes;
var UnstructuredType;
exports.UnstructuredType = UnstructuredType;
(function (UnstructuredType) {
UnstructuredType["Annex"] = "annex";
UnstructuredType["DivisionStatementOfReasons"] = "division_statement_of_reasons";
UnstructuredType["Unknown"] = "unknown";
})(UnstructuredType || (exports.UnstructuredType = UnstructuredType = {}));
var unstructuredTypes = new Set(Object.values(UnstructuredType));
exports.unstructuredTypes = unstructuredTypes;
var DocumentNodeType = _objectSpread(_objectSpread(_objectSpread({}, DivisionType), DocumentType), UnstructuredType);
exports.DocumentNodeType = DocumentNodeType;
var documentNodeTypes = new Set(Object.values(DocumentNodeType));
exports.documentNodeTypes = documentNodeTypes;
var documentNodeWithHeadlinesTypes = new Set([DocumentNodeType.Annex, // DocumentNodeType.Article,
DocumentNodeType.Bill, DocumentNodeType.Book, DocumentNodeType.Chapter, // DocumentNodeType.DivisionStatementOfReasons,
DocumentNodeType.Part, DocumentNodeType.Section, // DocumentNodeType.BillStatementOfReasons,
DocumentNodeType.Subsection, DocumentNodeType.Subtitle, DocumentNodeType.Title, DocumentNodeType.Tome // DocumentNodeType.Unknown,
]);
exports.documentNodeWithHeadlinesTypes = documentNodeWithHeadlinesTypes;
function assertNeverDocumentNode(node) {
throw new Error("Unexpected document node: " + node);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kb2N1bWVudHMudHMiXSwibmFtZXMiOlsiRGl2aXNpb25UeXBlIiwiZGl2aXNpb25UeXBlcyIsIlNldCIsIk9iamVjdCIsInZhbHVlcyIsIkRvY3VtZW50VHlwZSIsImRvY3VtZW50VHlwZXMiLCJVbnN0cnVjdHVyZWRUeXBlIiwidW5zdHJ1Y3R1cmVkVHlwZXMiLCJEb2N1bWVudE5vZGVUeXBlIiwiZG9jdW1lbnROb2RlVHlwZXMiLCJkb2N1bWVudE5vZGVXaXRoSGVhZGxpbmVzVHlwZXMiLCJBbm5leCIsIkJpbGwiLCJCb29rIiwiQ2hhcHRlciIsIlBhcnQiLCJTZWN0aW9uIiwiU3Vic2VjdGlvbiIsIlN1YnRpdGxlIiwiVGl0bGUiLCJUb21lIiwiYXNzZXJ0TmV2ZXJEb2N1bWVudE5vZGUiLCJub2RlIiwiRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUlBO0lBOENZQSxZOzs7V0FBQUEsWTtBQUFBQSxFQUFBQSxZO0FBQUFBLEVBQUFBLFk7QUFBQUEsRUFBQUEsWTtBQUFBQSxFQUFBQSxZO0FBQUFBLEVBQUFBLFk7QUFBQUEsRUFBQUEsWTtBQUFBQSxFQUFBQSxZO0FBQUFBLEVBQUFBLFk7QUFBQUEsRUFBQUEsWTtHQUFBQSxZLDRCQUFBQSxZOztBQVdMLElBQU1DLGFBQWEsR0FBRyxJQUFJQyxHQUFKLENBQTBCQyxNQUFNLENBQUNDLE1BQVAsQ0FBY0osWUFBZCxDQUExQixDQUF0Qjs7SUF5QktLLFk7OztXQUFBQSxZO0FBQUFBLEVBQUFBLFk7QUFBQUEsRUFBQUEsWTtHQUFBQSxZLDRCQUFBQSxZOztBQUlMLElBQU1DLGFBQWEsR0FBRyxJQUFJSixHQUFKLENBQTBCQyxNQUFNLENBQUNDLE1BQVAsQ0FBY0MsWUFBZCxDQUExQixDQUF0Qjs7SUEwQ0tFLGdCOzs7V0FBQUEsZ0I7QUFBQUEsRUFBQUEsZ0I7QUFBQUEsRUFBQUEsZ0I7QUFBQUEsRUFBQUEsZ0I7R0FBQUEsZ0IsZ0NBQUFBLGdCOztBQUtMLElBQU1DLGlCQUFpQixHQUFHLElBQUlOLEdBQUosQ0FBMEJDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjRyxnQkFBZCxDQUExQixDQUExQjs7O0FBRUEsSUFBTUUsZ0JBQWdCLGlEQUN4QlQsWUFEd0IsR0FFeEJLLFlBRndCLEdBR3hCRSxnQkFId0IsQ0FBdEI7OztBQU1BLElBQU1HLGlCQUFpQixHQUFHLElBQUlSLEdBQUosQ0FBMEJDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjSyxnQkFBZCxDQUExQixDQUExQjs7QUFFQSxJQUFNRSw4QkFBOEIsR0FBRyxJQUFJVCxHQUFKLENBQTBCLENBQ3RFTyxnQkFBZ0IsQ0FBQ0csS0FEcUQsRUFFdEU7QUFDQUgsZ0JBQWdCLENBQUNJLElBSHFELEVBSXRFSixnQkFBZ0IsQ0FBQ0ssSUFKcUQsRUFLdEVMLGdCQUFnQixDQUFDTSxPQUxxRCxFQU10RTtBQUNBTixnQkFBZ0IsQ0FBQ08sSUFQcUQsRUFRdEVQLGdCQUFnQixDQUFDUSxPQVJxRCxFQVN0RTtBQUNBUixnQkFBZ0IsQ0FBQ1MsVUFWcUQsRUFXdEVULGdCQUFnQixDQUFDVSxRQVhxRCxFQVl0RVYsZ0JBQWdCLENBQUNXLEtBWnFELEVBYXRFWCxnQkFBZ0IsQ0FBQ1ksSUFicUQsQ0FjdEU7QUFkc0UsQ0FBMUIsQ0FBdkM7OztBQWlCQSxTQUFTQyx1QkFBVCxDQUFpQ0MsSUFBakMsRUFBcUQ7QUFDMUQsUUFBTSxJQUFJQyxLQUFKLENBQVUsK0JBQStCRCxJQUF6QyxDQUFOO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gQVNUIG9mIGEgYmlsbCBhbmQgb3RoZXIgbGVnaXNsYXRpdmUtcmVsYXRlZCBkb2N1bWVudHNcbi8vXG5cbmltcG9ydCB7IEhhc3RFbGVtZW50LCBIYXN0VGV4dCB9IGZyb20gXCIuL2hhc3RcIlxuXG4vLyBOb3RlOiBJdCBzZWVtcyB0aGF0IEFrb21hIE50b3NvIGRvZXNuJ3QgZGVmaW5lIGFuIGFubmV4IGVsZW1lbnQuXG5leHBvcnQgaW50ZXJmYWNlIEFubmV4IGV4dGVuZHMgVW5zdHJ1Y3R1cmVkQmFzZSB7XG4gIHR5cGU6IFVuc3RydWN0dXJlZFR5cGUuQW5uZXhcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcnRpY2xlIGV4dGVuZHMgRGl2aXNpb25CYXNlIHtcbiAgLy8gY2hpbGRyZW46IHVuZGVmaW5lZCwgYmVjYXVzZSBhbiBhcnRpY2xlIGNvbnRhaW5zIG9ubHkgYWxpbmVhcy5cbiAgdHlwZTogRGl2aXNpb25UeXBlLkFydGljbGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCaWxsIGV4dGVuZHMgRG9jdW1lbnRCYXNlIHtcbiAgdHlwZTogRG9jdW1lbnRUeXBlLkJpbGxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCaWxsU3RhdGVtZW50T2ZSZWFzb25zIGV4dGVuZHMgRG9jdW1lbnRCYXNlIHtcbiAgdHlwZTogRG9jdW1lbnRUeXBlLkJpbGxTdGF0ZW1lbnRPZlJlYXNvbnNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCb29rIGV4dGVuZHMgRGl2aXNpb25CYXNlIHtcbiAgdHlwZTogRGl2aXNpb25UeXBlLkJvb2tcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGFwdGVyIGV4dGVuZHMgRGl2aXNpb25CYXNlIHtcbiAgdHlwZTogRGl2aXNpb25UeXBlLkNoYXB0ZXJcbn1cblxuZXhwb3J0IHR5cGUgRGl2aXNpb24gPVxuICB8IEFydGljbGVcbiAgfCBCb29rXG4gIHwgQ2hhcHRlclxuICB8IFBhcnRcbiAgfCBTZWN0aW9uXG4gIHwgU3Vic2VjdGlvblxuICB8IFN1YnRpdGxlXG4gIHwgVGl0bGVcbiAgfCBUb21lXG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb25CYXNlIGV4dGVuZHMgRG9jdW1lbnROb2RlQmFzZSB7XG4gIGNoaWxkcmVuOiBBcnJheTxEaXZpc2lvbiB8IFVuc3RydWN0dXJlZD5cbiAgdHlwZTogRGl2aXNpb25UeXBlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb25TdGF0ZW1lbnRPZlJlYXNvbnMgZXh0ZW5kcyBVbnN0cnVjdHVyZWRCYXNlIHtcbiAgdHlwZTogVW5zdHJ1Y3R1cmVkVHlwZS5EaXZpc2lvblN0YXRlbWVudE9mUmVhc29uc1xufVxuXG5leHBvcnQgZW51bSBEaXZpc2lvblR5cGUge1xuICBBcnRpY2xlID0gXCJhcnRpY2xlXCIsXG4gIEJvb2sgPSBcImJvb2tcIixcbiAgQ2hhcHRlciA9IFwiY2hhcHRlclwiLFxuICBQYXJ0ID0gXCJwYXJ0XCIsIC8vIFBhcnRpZVxuICBTZWN0aW9uID0gXCJzZWN0aW9uXCIsXG4gIFN1YnNlY3Rpb24gPSBcInN1YnNlY3Rpb25cIixcbiAgU3VidGl0bGUgPSBcInN1YnRpdGxlXCIsXG4gIFRpdGxlID0gXCJ0aXRsZVwiLFxuICBUb21lID0gXCJ0b21lXCIsXG59XG5leHBvcnQgY29uc3QgZGl2aXNpb25UeXBlcyA9IG5ldyBTZXQ8RG9jdW1lbnROb2RlVHlwZT4oT2JqZWN0LnZhbHVlcyhEaXZpc2lvblR5cGUpKVxuXG5leHBvcnQgdHlwZSBEb2N1bWVudCA9IEJpbGwgfCBCaWxsU3RhdGVtZW50T2ZSZWFzb25zXG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRCYXNlIGV4dGVuZHMgRG9jdW1lbnROb2RlQmFzZSB7XG4gIGNoaWxkcmVuOiBBcnJheTxEaXZpc2lvbiB8IFVuc3RydWN0dXJlZD5cbiAgdHlwZTogRG9jdW1lbnRUeXBlXG59XG5cbmV4cG9ydCB0eXBlIERvY3VtZW50Tm9kZSA9IERpdmlzaW9uIHwgRG9jdW1lbnQgfCBVbnN0cnVjdHVyZWRcblxuLy8vIERpc3BsYXkgb3JkZXI6XG4vLy8gLSBoZWFkbGluZXNcbi8vLyAtIGxpbmVzXG4vLy8gLSBjaGlsZHJlblxuZXhwb3J0IGludGVyZmFjZSBEb2N1bWVudE5vZGVCYXNlIHtcbiAgY2hpbGRyZW4/OiBBcnJheTxEaXZpc2lvbiB8IFVuc3RydWN0dXJlZD5cbiAgaGVhZGxpbmVzPzogQXJyYXk8SGFzdEVsZW1lbnQgfCBIYXN0VGV4dD4gLy8gRWFjaCBlbGVtZW50IG11c3QgYmUgb25lIGFuZCBvbmx5IG9uZSBsaW5lXG4gIGxpbmVzPzogQXJyYXk8SGFzdEVsZW1lbnQgfCBIYXN0VGV4dD4gLy8gRWFjaCBlbGVtZW50IG11c3QgYmUgb25lIGFuZCBvbmx5IG9uZSBsaW5lIG9yIGFsaW5lYVxuICBlSWQ/OiBzdHJpbmdcbiAgZ3VpZD86IHN0cmluZ1xuICBudW1iZXI/OiBudW1iZXJcbiAgdHlwZTogRG9jdW1lbnROb2RlVHlwZVxufVxuXG5leHBvcnQgZW51bSBEb2N1bWVudFR5cGUge1xuICBCaWxsID0gXCJiaWxsXCIsXG4gIEJpbGxTdGF0ZW1lbnRPZlJlYXNvbnMgPSBcImJpbGxfc3RhdGVtZW50X29mX3JlYXNvbnNcIiwgLy8gRXhwb3PDqSBkZXMgbW90aWZzXG59XG5leHBvcnQgY29uc3QgZG9jdW1lbnRUeXBlcyA9IG5ldyBTZXQ8RG9jdW1lbnROb2RlVHlwZT4oT2JqZWN0LnZhbHVlcyhEb2N1bWVudFR5cGUpKVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnQgZXh0ZW5kcyBEaXZpc2lvbkJhc2Uge1xuICB0eXBlOiBEaXZpc2lvblR5cGUuUGFydFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3Rpb24gZXh0ZW5kcyBEaXZpc2lvbkJhc2Uge1xuICB0eXBlOiBEaXZpc2lvblR5cGUuU2VjdGlvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNlY3Rpb24gZXh0ZW5kcyBEaXZpc2lvbkJhc2Uge1xuICB0eXBlOiBEaXZpc2lvblR5cGUuU3Vic2VjdGlvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YnRpdGxlIGV4dGVuZHMgRGl2aXNpb25CYXNlIHtcbiAgdHlwZTogRGl2aXNpb25UeXBlLlN1YnRpdGxlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGl0bGUgZXh0ZW5kcyBEaXZpc2lvbkJhc2Uge1xuICB0eXBlOiBEaXZpc2lvblR5cGUuVGl0bGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUb21lIGV4dGVuZHMgRGl2aXNpb25CYXNlIHtcbiAgdHlwZTogRGl2aXNpb25UeXBlLlRvbWVcbn1cblxuLy8vIEEgbm9uIHN0cnVjdHVyZWQgZG9jdW1lbnQgb3IgZGl2aXNpb24uXG4vLy8gQ29udGFpbnMgbW9zdGx5IG9ubHkgY29udGVudFxuZXhwb3J0IGludGVyZmFjZSBVbmtub3duIGV4dGVuZHMgVW5zdHJ1Y3R1cmVkQmFzZSB7XG4gIHR5cGU6IFVuc3RydWN0dXJlZFR5cGUuVW5rbm93blxufVxuXG5leHBvcnQgdHlwZSBVbnN0cnVjdHVyZWQgPVxuICB8IEFubmV4XG4gIHwgRGl2aXNpb25TdGF0ZW1lbnRPZlJlYXNvbnNcbiAgfCBVbmtub3duXG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5zdHJ1Y3R1cmVkQmFzZSBleHRlbmRzIERvY3VtZW50Tm9kZUJhc2Uge1xuICAvLyBjaGlsZHJlbjogdW5kZWZpbmVkXG4gIHR5cGU6IFVuc3RydWN0dXJlZFR5cGVcbn1cblxuZXhwb3J0IGVudW0gVW5zdHJ1Y3R1cmVkVHlwZSB7XG4gIEFubmV4ID0gXCJhbm5leFwiLFxuICBEaXZpc2lvblN0YXRlbWVudE9mUmVhc29ucyA9IFwiZGl2aXNpb25fc3RhdGVtZW50X29mX3JlYXNvbnNcIixcbiAgVW5rbm93biA9IFwidW5rbm93blwiLFxufVxuZXhwb3J0IGNvbnN0IHVuc3RydWN0dXJlZFR5cGVzID0gbmV3IFNldDxEb2N1bWVudE5vZGVUeXBlPihPYmplY3QudmFsdWVzKFVuc3RydWN0dXJlZFR5cGUpKVxuXG5leHBvcnQgY29uc3QgRG9jdW1lbnROb2RlVHlwZSA9IHtcbiAgLi4uRGl2aXNpb25UeXBlLFxuICAuLi5Eb2N1bWVudFR5cGUsXG4gIC4uLlVuc3RydWN0dXJlZFR5cGUsXG59XG5leHBvcnQgdHlwZSBEb2N1bWVudE5vZGVUeXBlID0gRGl2aXNpb25UeXBlIHwgRG9jdW1lbnRUeXBlIHwgVW5zdHJ1Y3R1cmVkVHlwZVxuZXhwb3J0IGNvbnN0IGRvY3VtZW50Tm9kZVR5cGVzID0gbmV3IFNldDxEb2N1bWVudE5vZGVUeXBlPihPYmplY3QudmFsdWVzKERvY3VtZW50Tm9kZVR5cGUpKVxuXG5leHBvcnQgY29uc3QgZG9jdW1lbnROb2RlV2l0aEhlYWRsaW5lc1R5cGVzID0gbmV3IFNldDxEb2N1bWVudE5vZGVUeXBlPihbXG4gIERvY3VtZW50Tm9kZVR5cGUuQW5uZXgsXG4gIC8vIERvY3VtZW50Tm9kZVR5cGUuQXJ0aWNsZSxcbiAgRG9jdW1lbnROb2RlVHlwZS5CaWxsLFxuICBEb2N1bWVudE5vZGVUeXBlLkJvb2ssXG4gIERvY3VtZW50Tm9kZVR5cGUuQ2hhcHRlcixcbiAgLy8gRG9jdW1lbnROb2RlVHlwZS5EaXZpc2lvblN0YXRlbWVudE9mUmVhc29ucyxcbiAgRG9jdW1lbnROb2RlVHlwZS5QYXJ0LFxuICBEb2N1bWVudE5vZGVUeXBlLlNlY3Rpb24sXG4gIC8vIERvY3VtZW50Tm9kZVR5cGUuQmlsbFN0YXRlbWVudE9mUmVhc29ucyxcbiAgRG9jdW1lbnROb2RlVHlwZS5TdWJzZWN0aW9uLFxuICBEb2N1bWVudE5vZGVUeXBlLlN1YnRpdGxlLFxuICBEb2N1bWVudE5vZGVUeXBlLlRpdGxlLFxuICBEb2N1bWVudE5vZGVUeXBlLlRvbWUsXG4gIC8vIERvY3VtZW50Tm9kZVR5cGUuVW5rbm93bixcbl0pXG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnROZXZlckRvY3VtZW50Tm9kZShub2RlOiBuZXZlcik6IG5ldmVyIHtcbiAgdGhyb3cgbmV3IEVycm9yKFwiVW5leHBlY3RlZCBkb2N1bWVudCBub2RlOiBcIiArIG5vZGUpXG59XG4iXX0=