UNPKG

@avonjs/avonjs

Version:

A fluent Node.js API generator.

41 lines (40 loc) 1.37 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const Contracts_1 = require("../../Contracts"); const FieldNotFoundException_1 = __importDefault(require("../../Exceptions/FieldNotFoundException")); const ResourceIndexRequest_1 = __importDefault(require("./ResourceIndexRequest")); class AssociableRequest extends ResourceIndexRequest_1.default { /** * Indicates type of the request instance. */ type() { return Contracts_1.RequestTypes.AssociableRequest; } /** * Get the relatable field. */ relatedField() { const field = this.resource() .availableFieldsOnForms(this) .withOnlyRelatableFields() .findFieldByAttribute(this.route('field')); FieldNotFoundException_1.default.unless(field); return field; } /** * Get all of the possibly available filters for the request. */ availableFilters() { return this.relatedField().availableFilters(this); } /** * Get all of the possibly available orderings for the request. */ availableOrderings() { return this.relatedField().availableOrderings(this); } } exports.default = AssociableRequest;