@shko.online/componentframework-mock
Version:
Mocking library to help with testing PowerApps Component Framework Components
88 lines (86 loc) • 2.64 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.SELECT_METADATA_ENTITY_BY_ENTITYSET = exports.SELECT_METADATA_ENTITY = exports.INSERT_METADATA_ENTITY = exports.EntityMetadataSQL = exports.CREATE_TABLE_METADATA_ENTITY = void 0;
/*
Copyright (c) 2022 Betim Beja and Shko Online LLC
Licensed under the MIT license.
*/
const CREATE_TABLE_METADATA_ENTITY = exports.CREATE_TABLE_METADATA_ENTITY = `
CREATE TABLE Metadata__Entity(
EntityId UniqueIdentifier PRIMARY KEY,
LogicalName string,
EntitySetName string,
PrimaryIdAttribute string,
PrimaryNameAttribute string,
PrimaryImageAttribute string,
DisplayName string,
DisplayCollectionName string,
LogicalCollectionName string,
Description string
)
`;
const INSERT_METADATA_ENTITY = exports.INSERT_METADATA_ENTITY = `
INSERT INTO Metadata__Entity VALUES (
?,
?,
?,
?,
?,
?,
?,
?,
?,
?
)
`;
const SELECT_METADATA_ENTITY = exports.SELECT_METADATA_ENTITY = `
SELECT
EntityId,
LogicalName,
EntitySetName,
PrimaryIdAttribute,
PrimaryNameAttribute,
PrimaryImageAttribute,
DisplayName,
DisplayCollectionName,
LogicalCollectionName,
Description
FROM
Metadata__Entity
WHERE LogicalName = ?
`;
const SELECT_METADATA_ENTITY_BY_ENTITYSET = exports.SELECT_METADATA_ENTITY_BY_ENTITYSET = `
SELECT
EntityId,
LogicalName,
EntitySetName,
PrimaryIdAttribute,
PrimaryNameAttribute,
PrimaryImageAttribute,
DisplayName,
DisplayCollectionName,
LogicalCollectionName,
Description
FROM
Metadata__Entity
WHERE EntitySetName = ?
`;
class EntityMetadataSQL {
constructor(sql) {
this.sql = void 0;
this.sql = sql;
sql(CREATE_TABLE_METADATA_ENTITY);
}
AddEntityMetadata(metadata) {
this.sql(INSERT_METADATA_ENTITY, [metadata.EntityId, metadata.LogicalName, metadata.EntitySetName, metadata.PrimaryIdAttribute, metadata.PrimaryNameAttribute, metadata.PrimaryImageAttribute, metadata.DisplayName, metadata.DisplayCollectionName, metadata.LogicalCollectionName, metadata.Description]);
}
SelectTableMetadata(LogicalName) {
return this.sql(SELECT_METADATA_ENTITY, [LogicalName]);
}
SelectTableMetadataByEntitySet(EntitySetName) {
return this.sql(SELECT_METADATA_ENTITY_BY_ENTITYSET, [EntitySetName]);
}
}
exports.EntityMetadataSQL = EntityMetadataSQL;