How to use the fontoxpath.registerCustomXPathFunction function in fontoxpath

To help you get started, we’ve selected a few fontoxpath examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
);

			registerCustomXPathFunction(
				'test:custom-date-function-optional-param',
				['xs:date?'],
				'xs:date?',
				function(dynamicContext, date) {
					chai.assert.isTrue(
						date === null || date instanceof Date,
						'Parameter is not null or of type javascript date'
					);
					return date;
				}
			);

			registerCustomXPathFunction(
				'test:custom-date-function-zero-to-many-param',
				['xs:date*'],
				'xs:date*',
				function(dynamicContext, dates) {
					chai.assert.isTrue(Array.isArray(dates), 'Parameter is not an array');

					for (const date of dates) {
						chai.assert.isTrue(
							date instanceof Date,
							'Parameter is not of type javascript date'
						);
					}
					return dates;
				}
			);
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
before(() => {
			registerCustomXPathFunction(
				'test:custom-date-function-param',
				['xs:date'],
				'xs:date',
				function(dynamicContext, date) {
					chai.assert.isTrue(
						date instanceof Date,
						'Parameter is not of type javascript date'
					);
					return date;
				}
			);

			registerCustomXPathFunction(
				'test:custom-date-function-optional-param',
				['xs:date?'],
				'xs:date?',
				function(dynamicContext, date) {
					chai.assert.isTrue(
						date === null || date instanceof Date,
						'Parameter is not null or of type javascript date'
					);
					return date;
				}
			);

			registerCustomXPathFunction(
				'test:custom-date-function-zero-to-many-param',
				['xs:date*'],
				'xs:date*',
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
before(() => {
		registerCustomXPathFunction('test:custom-function1', ['xs:string?'], 'xs:boolean', function(
			dynamicContext,
			string
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');
			return string === null || string === 'test';
		});

		registerCustomXPathFunction(
			'test:custom-function2',
			['xs:string', 'xs:boolean'],
			'xs:boolean',
			function(dynamicContext, string, boolean) {
				chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
				chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

				return string === 'test' && boolean;
			}
		);

		registerCustomXPathFunction('test:custom-function3', ['item()*'], 'item()', function(
			dynamicContext,
			input
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-gMonthDay-function', [], 'xs:gMonthDay', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-gMonth-function', [], 'xs:gMonth', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-gDay-function', [], 'xs:gDay', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
return input[0] || null;
		});

		registerCustomXPathFunction('test:custom-function4', ['xs:string*'], 'xs:string*', function(
			dynamicContext,
			stringArray
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return stringArray.map(function(string) {
				return string + '-test';
			});
		});

		registerCustomXPathFunction('test:custom-date-function', [], 'xs:date', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-time-function', [], 'xs:time', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-time-function', [], 'xs:time', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-dateTime-function', [], 'xs:dateTime', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction(
			'test:custom-gYearMonth-function',
			[],
			'xs:gYearMonth',
			function(dynamicContext) {
				chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
				chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

				return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
			}
		);

		registerCustomXPathFunction('test:custom-gYear-function', [], 'xs:gYear', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-gMonthDay-function', [], 'xs:gMonthDay', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});

		registerCustomXPathFunction('test:custom-gMonth-function', [], 'xs:gMonth', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return new Date(Date.UTC(2018, 5, 22, 10, 25, 30));
		});
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
['xs:date+'],
				'xs:date*',
				function(dynamicContext, dates) {
					chai.assert.isTrue(Array.isArray(dates), 'Parameter is not an array');

					for (const date of dates) {
						chai.assert.isTrue(
							date instanceof Date,
							'Parameter is not of type javascript date'
						);
					}
					return dates;
				}
			);

			registerCustomXPathFunction(
				'test:custom-time-param-function',
				['xs:time'],
				'xs:time',
				function(dynamicContext, time) {
					chai.assert.isTrue(
						time instanceof Date,
						'Parameter is not of type javascript date'
					);
					return time;
				}
			);

			registerCustomXPathFunction(
				'test:custom-dateTime-param-function',
				['xs:dateTime'],
				'xs:dateTime',
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
before(() => {
		registerCustomXPathFunction('test:custom-function1', ['xs:string?'], 'xs:boolean', function(
			dynamicContext,
			string
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');
			return string === null || string === 'test';
		});

		registerCustomXPathFunction(
			'test:custom-function2',
			['xs:string', 'xs:boolean'],
			'xs:boolean',
			function(dynamicContext, string, boolean) {
				chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
				chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');
github FontoXML / fontoxpath / test / specs / parsing / registerCustomXPathFunction.tests.ts View on Github external
return string === 'test' && boolean;
			}
		);

		registerCustomXPathFunction('test:custom-function3', ['item()*'], 'item()', function(
			dynamicContext,
			input
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return input[0] || null;
		});

		registerCustomXPathFunction('test:custom-function4', ['xs:string*'], 'xs:string*', function(
			dynamicContext,
			stringArray
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');

			return stringArray.map(function(string) {
				return string + '-test';
			});
		});

		registerCustomXPathFunction('test:custom-date-function', [], 'xs:date', function(
			dynamicContext
		) {
			chai.assert.isOk(dynamicContext, 'A dynamic context has not been passed');
			chai.assert.isOk(dynamicContext.domFacade, 'A domFacade has not been passed');